MCP Tools Reference: drivemcp.googleapis.com

ツール: create_file

このツールを呼び出して、Google ドライブにファイルを作成またはアップロードします。

ファイルをアップロードする場合は、アップロードするファイルの MIME タイプに関係なく、コンテンツを content フィールドに Base64 でエンコードする必要があります。

作成が成功すると、単一の File オブジェクトを返します。

次の Google ドライブのファーストパーティ MIME タイプは、コンテンツを指定せずに作成できます。

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

デフォルトでは、次の MIME タイプに対して次の変換が行われます。

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

ファーストパーティの MIME タイプの変換を無効にするには、disable_conversion_to_google_type を true に設定します。

フォルダは、MIME タイプを application/vnd.google-apps.folder に設定することで作成できます。

次のサンプルは、curl を使用して create_file MCP ツールを呼び出す方法を示しています。

Curl リクエスト
curl --location 'https://drivemcp.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "create_file",
    "arguments": {
      // provide these details according to the tool MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

入力スキーマ

ファイルをアップロードするリクエスト。

CreateFileRequest

JSON 表現
{
  "title": string,
  "mimeType": string,
  "content": string,
  "parentId": string,
  "disableConversionToGoogleType": boolean
}
フィールド
title

string

ファイルのタイトル。

mimeType

string

アップロードするファイルの MIME タイプ。

content

string

Base64 でエンコードされたファイルの内容。ファイルの MIME タイプに関係なく、content フィールドは常に Base64 でエンコードする必要があります。

parentId

string

ファイルの親 ID。

disableConversionToGoogleType

boolean

true の場合、ファイルは Google タイプに変換されません。Google に同等のものがない MIME タイプには影響しません。

出力スキーマ

ファイル リソース。

ファイル

JSON 表現
{
  "id": string,
  "title": string,
  "parentId": string,

  "mimeType": string

  "fileSize": string

  "description": string

  "fileExtension": string

  "contentSnippet": string

  "viewUrl": string

  "sharedWithMeTime": string

  "createdTime": string

  "modifiedTime": string

  "viewedByMeTime": string

  "owner": string
}
フィールド
id

string

取得されたファイルの ID。

title

string

ファイルのタイトル。

parentId

string

(省略可)ファイルの親の ID。

共用体フィールド _mime_type

_mime_type は次のいずれかになります。

mimeType

string

ファイルの MIME タイプ。

共用体フィールド _file_size

_file_size は次のいずれかになります。

fileSize

string (int64 format)

ファイルのサイズ(バイト単位)。

共用体フィールド _description

_description は次のいずれかになります。

description

string

ファイルの説明。

共用体フィールド _file_extension

_file_extension は次のいずれかになります。

fileExtension

string

ファイルの元の拡張子。これは、コンテンツがドライブに保存されているファイルに対してのみ入力されます。

共用体フィールド _content_snippet

_content_snippet は次のいずれかになります。

contentSnippet

string

ファイルの内容に関する生成されたスニペット。

共用体フィールド _view_url

_view_url は次のいずれかになります。

viewUrl

string

ファイルを表示するための URL。

共用体フィールド _shared_with_me_time

_shared_with_me_time は次のいずれかになります。

sharedWithMeTime

string (Timestamp format)

ファイルがリクエスト元と共有された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

共用体フィールド _created_time

_created_time は次のいずれかになります。

createdTime

string (Timestamp format)

ファイルが作成された日時。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

共用体フィールド _modified_time

_modified_time は次のいずれかになります。

modifiedTime

string (Timestamp format)

ファイルが最後に変更された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

共用体フィールド _viewed_by_me_time

_viewed_by_me_time は次のいずれかになります。

viewedByMeTime

string (Timestamp format)

リクエスト元がファイルを最後に閲覧した日時。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

共用体フィールド _owner

_owner は次のいずれかになります。

owner

string

ファイルのオーナーのメールアドレス。

タイムスタンプ

JSON 表現
{
  "seconds": string,
  "nanos": integer
}
フィールド
seconds

string (int64 format)

UNIX エポック 1970-01-01T00:00:00Z からの UTC 時刻の秒数を表します。-62135596800~253402300799 の範囲(両端を含む)にする必要があります(これは 0001-01-01T00:00:00Z~9999-12-31T23:59:59Z に対応します)。

nanos

integer

ナノ秒分解能による、秒の負ではない小数以下部分。このフィールドは、秒の代替ではなく、期間のナノ秒部分です。小数以下を含む負の秒の値は、時間を前方にカウントする負ではない nanos 値を持つ必要があります。0~999,999,999 にする必要があります(両端を含む)。

ツールのアノテーション

破壊的ヒント: ❌ | べき等ヒント: ❌ | 読み取り専用ヒント: ❌ | オープン ワールド ヒント: ✅