MCP Tools Reference: developerknowledge.googleapis.com

Narzędzie: search_documents

Za pomocą tego narzędzia możesz znaleźć dokumentację dotyczącą usług Google dla deweloperów. Dokumenty zawierają oficjalne interfejsy API, fragmenty kodu, informacje o wersji, sprawdzone metody, przewodniki, dane debugowania i inne informacje. Dotyczy to tych usług i domen:

  • ADK: adk.dev

  • Android: developer.android.com

  • Apigee: docs.apigee.com

  • Chrome: developer.chrome.com

  • Dart: dart.dev

  • Firebase: firebase.google.com

  • Flutter: docs.flutter.dev

  • Fuchsia: fuchsia.dev

  • Interfejs wiersza poleceń Gemini: geminicli.com

  • Genkit: genkit.dev

  • Go: go.dev

  • Google AI: ai.google.dev

  • Google Antigravity: antigravity.google

  • Google Cloud: cloud.google.com i docs.cloud.google.com

  • Google Developers, Ads, Search, Google Maps, Youtube: developers.google.com

  • Google Home: developers.home.google.com

  • Google Maps Platform: mapsplatform.google.com

  • Google Workspace: knowledge.workspace.google.com

  • TensorFlow: www.tensorflow.org

  • Internet: web.dev

To narzędzie zwraca fragmenty tekstu, nazwy i identyfikatory URI pasujących dokumentów. Jeśli potrzebujesz dokładnych przykładowych kodów, flag interfejsu wiersza poleceń, konkretnych komunikatów o błędach, pełnych samouczków lub deterministycznego wyszukiwania słów kluczowych, użyj najpierw search_documents, a potem get_documents. Jeśli zwrócone fragmenty nie są wystarczająco szczegółowe, aby odpowiedzieć na pytanie użytkownika, użyj get_documents z parent z danych wyjściowych tego narzędzia, aby pobrać pełną treść dokumentu. Odpowiadając użytkownikowi, zawsze podawaj nazwy zasobów dokumentów źródłowych (documents/...) lub identyfikatory URI.

Poniższy przykładowy kod pokazuje, jak używać curl do wywoływania narzędzia MCP search_documents.

Żądanie Curl
curl --location 'https://developerknowledge.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "search_documents",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Schemat wejściowy

Schemat żądania dla: search_documents. Użyj pola query, aby wyszukać powiązaną dokumentację Google dla deweloperów.

SearchDocumentChunksRequest

Zapis JSON
{
  "query": string
}
Pola
query

string

Wymagane. Nieprzetworzony ciąg zapytania podany przez użytkownika, np. „Jak utworzyć zasobnik Cloud Storage?”.

Schemat wyjściowy

Schemat odpowiedzi dla: search_documents.

SearchDocumentChunksResponse

Zapis JSON
{
  "results": [
    {
      object (DocumentChunk)
    }
  ]
}
Pola
results[]

object (DocumentChunk)

Wyniki wyszukiwania dla danego zapytania. Każdy element DocumentChunk na tej liście zawiera fragment treści związany z zapytaniem. Użyj pola DocumentChunk.parent każdego wyniku z get_documents, aby pobrać pełną treść dokumentu.

DocumentChunk

Zapis JSON
{
  "parent": string,
  "id": string,
  "content": string
}
Pola
parent

string

Tylko dane wyjściowe. Nazwa zasobu dokumentu, z którego pochodzi ten fragment. Format: documents/{uri_without_scheme} Przykład: documents/docs.cloud.google.com/storage/docs/creating-buckets

id

string

Tylko dane wyjściowe. Identyfikator tego fragmentu w dokumencie. Identyfikator fragmentu jest unikalny w obrębie dokumentu, ale nie jest unikalny globalnie we wszystkich dokumentach. Identyfikator fragmentu nie jest stały i może się zmieniać.

content

string

Tylko dane wyjściowe. Treść fragmentu dokumentu.

Adnotacje dotyczące narzędzi

Adnotacje narzędzi są wysyłane do klientów MCP, aby opisać podstawowe ryzyko związane z danym narzędziem. Większość klientów traktuje te wskazówki jako niezaufane, ale można ich użyć do określenia, kiedy wysłać użytkownikowi prośbę o potwierdzenie.

Oprócz ciągu tytułu zdefiniowane są te wskazówki logiczne:

  • readOnlyHint: jeśli ma wartość true, narzędzie nie modyfikuje swojego środowiska. Wartość domyślna: false.
  • destructiveHint: jeśli ma wartość „true”, narzędzie może wykonywać działania destrukcyjne. Jeśli ma wartość false, narzędzie może wykonywać tylko działania dodawania. Wartość domyślna: true.
  • idempotentHint: jeśli ma wartość „true”, wielokrotne wywoływanie narzędzia z tymi samymi argumentami nie będzie miało dodatkowego wpływu na jego środowisko. Wartość domyślna: false.
  • openWorldHint: jeśli ma wartość true, narzędzie może wchodzić w interakcje z „otwartym światem” podmiotów zewnętrznych. Jeśli ma wartość false, narzędzie może wchodzić w interakcje tylko z encjami wewnętrznymi. Na przykład narzędzie do wyszukiwania w internecie jest narzędziem typu Otwarty świat, a narzędzie do zapamiętywania – nie.

Wskazówka dotycząca niszczenia: ❌ | Wskazówka dotycząca idempotencji: ✅ | Wskazówka dotycząca tylko do odczytu: ✅ | Wskazówka dotycząca otwartego świata: ❌