MCP Reference: drivemcp.googleapis.com

Ein Model Context Protocol (MCP)-Server fungiert als Proxy zwischen einem externen Dienst, der einem Large Language Model (LLM) oder einer KI-Anwendung Kontext, Daten oder Funktionen bereitstellt. MCP-Server verbinden KI-Anwendungen mit externen Systemen wie Datenbanken und Webdiensten und übersetzen deren Antworten in ein Format, das die KI-Anwendung versteht.

MCP-Tools

Ein MCP-Tool ist eine Funktion oder ausführbare Funktion, die ein MCP-Server einem LLM oder einer KI-Anwendung zur Ausführung einer Aktion in der realen Welt zur Verfügung stellt.

Der MCP-Server drivemcp.googleapis.com bietet die folgenden Tools:

MCP-Tools
create_file

Rufen Sie dieses Tool auf, um eine Datei in Google Drive zu erstellen oder hochzuladen.

Wenn Sie eine Datei hochladen, muss der Inhalt unabhängig vom MIME-Typ der hochgeladenen Datei im Feld content Base64-codiert sein.

Gibt bei erfolgreicher Erstellung ein einzelnes File-Objekt zurück.

Die folgenden Google Drive-Mime-Typen von Erstanbietern können ohne Angabe von Inhalten erstellt werden:

  • application/vnd.google-apps.document
  • application/vnd.google-apps.spreadsheet
  • application/vnd.google-apps.presentation

Standardmäßig werden die folgenden Konvertierungen für die folgenden MIME-Typen vorgenommen:

  • text/plain nach application/vnd.google-apps.document
  • text/csv nach application/vnd.google-apps.spreadsheet

Wenn Sie Conversions für eigene MIME-Typen deaktivieren möchten, setzen Sie disable_conversion_to_google_type auf „true“.

Ordner können erstellt werden, indem der Mime-Typ auf application/vnd.google-apps.folder festgelegt wird.

download_file_content

Rufen Sie dieses Tool auf, um den Inhalt einer Drive-Datei als binäre Rohdaten (Bytes) herunterzuladen.

Wenn es sich bei der Datei um einen proprietären Google Drive-MIME-Typ handelt, ist das Feld exportMimeType erforderlich. Es bestimmt das Format der heruntergeladenen Datei.

Wenn die Datei nicht gefunden wird, versuchen Sie, sie mit anderen Tools wie search_files zu finden.

Wenn der Nutzer eine Darstellung seiner Drive-Inhalte in natürlicher Sprache wünscht, verwenden Sie das Tool read_file_content (read_file_content sollte kleiner und leichter zu parsen sein).

get_file_metadata

Rufen Sie dieses Tool auf, um allgemeine Metadaten zu einer Drive-Datei eines Nutzers abzurufen.

Wenn die Datei nicht gefunden wird, versuchen Sie, sie mit anderen Tools wie search_files zu finden.

get_file_permissions Rufen Sie dieses Tool auf, um die Berechtigungen einer Drive-Datei aufzulisten.
list_recent_files

Rufen Sie dieses Tool auf, um die letzten Dateien für einen Nutzer in einer bestimmten Sortierreihenfolge zu finden. Die Standardsortierreihenfolge ist recency.

Folgende Sortierreihenfolgen werden unterstützt:

  • recency: Der letzte Zeitstempel aus den Datums- und Uhrzeitfeldern der Datei.
  • lastModified: Der Zeitpunkt, zu dem die Datei zuletzt von jemandem geändert wurde.
  • lastModifiedByMe: Der Zeitpunkt, zu dem die Datei zuletzt vom Nutzer geändert wurde.

Die Standardseitengröße ist 10. Verwenden Sie next_page_token, um die Ergebnisse zu paginieren.

read_file_content

Rufen Sie dieses Tool auf, um eine Darstellung einer Drive-Datei in natürlicher Sprache abzurufen.

Bei sehr großen Dateien sind die Inhalte der Datei möglicherweise unvollständig. Die Textdarstellung ändert sich im Laufe der Zeit. Gehen Sie also nicht davon aus, dass der von diesem Tool zurückgegebene Text ein bestimmtes Format hat.

Unterstützte MIME-Typen:

  • application/vnd.google-apps.document
  • application/vnd.google-apps.presentation
  • application/vnd.google-apps.spreadsheet
  • application/pdf
  • application/msword
  • application/vnd.openxmlformats-officedocument.wordprocessingml.document
  • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
  • application/vnd.openxmlformats-officedocument.presentationml.presentation
  • application/vnd.oasis.opendocument.spreadsheet
  • application/vnd.oasis.opendocument.presentation
  • application/x-vnd.oasis.opendocument.text
  • image/png
  • image/jpeg
  • image/jpg

Wenn die Datei nicht gefunden wird, versuchen Sie, sie mit anderen Tools wie search_files anhand von Suchbegriffen zu finden.

search_files

Rufen Sie dieses Tool auf, um anhand einer strukturierten Anfrage nach Drive-Dateien zu suchen.

Für das Feld query müssen Suchoperatoren für Abfragen verwendet werden.

Ein Abfragestring enthält die folgenden drei Teile: query_term operator values, wobei gilt:

  • query_term ist der Suchbegriff oder das Feld, nach dem gesucht werden soll.
  • operator gibt die Bedingung für den Suchbegriff an.
  • values sind die spezifischen Werte, mit denen Sie Ihre Suchergebnisse filtern können.

Suchbegriffe

In der folgenden Tabelle sind gültige Suchbegriffe mit ihren Beschreibungen aufgeführt:

Suchbegriff Gültige Operatoren Nutzung
title contains, =, != Titel der Datei. In einfache Anführungszeichen (') setzen. Einfache Anführungszeichen in Abfragen mit \' maskieren, z. B. 'Valentine\'s Day'.
fullText contains Gibt an, ob die title oder der Text im Inhalt der Datei übereinstimmen. In einfache Anführungszeichen (') setzen. Einfache Anführungszeichen in Abfragen mit \' maskieren, z. B. 'Valentine\'s Day'.
mimeType contains, =, != MIME-Typ der Datei. In einfache Anführungszeichen (') setzen. Einfache Anführungszeichen in Abfragen mit \' maskieren, z. B. 'Valentine\'s Day'.
modifiedTime <=, <, =, !=, >, >= Datum der letzten Änderung der Datei. RFC 3339-Format, Standardzeitzone ist UTC, z. B. 2012-06-04T12:00:00-08:00. Felder vom Typ date sind nicht vergleichbar.
viewedByMeTime <=, <, =, !=, >, >= Das Datum, an dem der Nutzer eine Datei zuletzt aufgerufen hat. RFC 3339-Format, Standardzeitzone ist UTC, z. B. 2012-06-04T12:00:00-08:00. Felder vom Typ date sind nicht vergleichbar.
parentId =, != Gibt an, ob das übergeordnete Element der angegebenen ID entspricht. Mit root kann die Ablage des Nutzers angegeben werden, die als primäre Hierarchie dient.
owner =, != Nutzer, dem die Datei gehört Mit me kann der Nutzer angegeben werden, der die Anfrage stellt.
sharedWithMe =, != Dateien in der Sammlung „Für mich freigegeben“ des Nutzers. Alle Dateinutzer sind in der Zugriffssteuerungsliste (Access Control List, ACL) der Datei enthalten. Kann entweder true oder false sein.
createdTime <=, <, =, !=, >, >= Das Datum, an dem die Datei erstellt wurde. Verwenden Sie das RFC 3339-Format. Die Standardzeitzone ist UTC, z. B. 2012-06-04T12:00:00-08:00.

Abfrageoperatoren

In der folgenden Tabelle sind gültige Suchoperatoren aufgeführt:

Operator Nutzung
contains Der Inhalt eines Strings ist im anderen vorhanden.
= Der Inhalt eines Strings oder booleschen Werts ist gleich dem anderen.
!= Der Inhalt eines Strings oder booleschen Werts ist nicht gleich dem anderen.
< Ein Wert ist kleiner als ein anderer.
<= Ein Wert ist kleiner oder gleich einem anderen.
> Ein Wert ist größer als ein anderer.
>= Ein Wert ist größer oder gleich einem anderen.
in Ein Element ist in einer Sammlung enthalten.
and Gibt Elemente zurück, die beiden Abfragen entsprechen.
or Gibt Elemente zurück, die mit einer der beiden Abfragen übereinstimmen.
not Negiert eine Suchanfrage.
has Eine Sammlung enthält ein Element, das den Parametern entspricht.

Beispiele für Abfragen:

  • title contains 'hello' and title contains 'goodbye'
  • modifiedTime > '2024-01-01T00:00:00Z' and (mimeType contains 'image/' or mimeType contains 'video/')
  • parentId = '1234567'
  • fullText contains 'hello'
  • owner = 'test@example.org'
  • sharedWithMe = true
  • owner = 'me' für Dateien, die dem Nutzer gehören

Verwenden Sie next_page_token, um die Ergebnisse zu paginieren. Eine leere Antwort gibt an, dass es entweder keine Ergebnisse oder keine weiteren Ergebnisse gibt, die zurückgegeben werden können.

Spezifikationen für MCP-Tools abrufen

Wenn Sie die MCP-Tool-Spezifikationen für alle Tools auf einem MCP-Server abrufen möchten, verwenden Sie die Methode tools/list. Im folgenden Beispiel wird gezeigt, wie Sie mit curl alle Tools und ihre Spezifikationen auflisten, die derzeit auf dem MCP-Server verfügbar sind.

Curl-Anfrage
curl --location 'https://drivemcp.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'