MCP Tools Reference: drivemcp.googleapis.com

Herramienta: read_file_content

Llama a esta herramienta para recuperar una representación en lenguaje natural de un archivo de Drive y, de manera opcional, sus comentarios.

El contenido del archivo puede estar incompleto para archivos muy grandes. La representación de texto cambiará con el tiempo, por lo que no hagas suposiciones sobre el formato particular del texto que devuelve esta herramienta. Si se admite, las etiquetas de comentarios se incluirán en el contenido.

Tipos de MIME admitidos:

  • 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

Si no se encuentra el archivo, intenta usar otras herramientas como search_files para encontrar el archivo que solicita el usuario con palabras clave.

En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta MCP read_file_content.

Solicitud curl
curl --location 'https://drivemcp.googleapis.com/mcp/v1' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "read_file_content",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Esquema de entrada

Solicitud para leer el contenido del archivo con compatibilidad para recuperar comentarios.

ReadFileContentRequest

Representación JSON
{
  "fileId": string,
  "includeComments": boolean
}
Campos
fileId

string

Obligatorio. Es el ID del archivo que se recuperará.

includeComments

boolean

Indica si se deben incluir comentarios en la respuesta. Los comentarios se insertarán en el contenido de texto del archivo con una asignación a los hilos de comentarios.

Esquema de salida

Respuesta para leer el contenido del archivo.

ReadFileContentResponse

Representación JSON
{
  "contentAnchoredComments": [
    {
      object (CommentThread)
    }
  ],
  "unanchoredComments": [
    {
      object (CommentThread)
    }
  ],

  "fileContent": string

  "textFormattingNotSupported": boolean
  // End of list of possible types for union field
  // _text_formatting_not_supported.

  "commentsNotSupported": boolean
}
Campos
contentAnchoredComments[]

object (CommentThread)

Hilos de comentarios a los que se hace referencia en el archivo_content que se muestra.

unanchoredComments[]

object (CommentThread)

Hilos de comentarios que no se pudieron anclar a contenido específico en el archivo que se muestra.

Campo de unión _file_content.

_file_content puede ser una de las siguientes opciones:

fileContent

string

Contenido del archivo de Drive que se muestra en formato de texto. Puede estar vacío si el archivo no es compatible con el formato de texto. Puede incluir referencias de comentarios si include_comments es verdadero en la solicitud.

Campo de unión _text_formatting_not_supported.

_text_formatting_not_supported puede ser una de las siguientes opciones:

textFormattingNotSupported

boolean

Indica si se admite el formato de texto para este archivo. Si es verdadero, file_content estará vacío.

Campo de unión _comments_not_supported.

_comments_not_supported puede ser una de las siguientes opciones:

commentsNotSupported

boolean

Indica si se admite la devolución de comentarios para este archivo. Solo está presente si include_comments es verdadero en la solicitud y no se admiten comentarios.

CommentThread

Representación JSON
{
  "replies": [
    {
      object (Post)
    }
  ],

  "commentId": string

  "status": enum (Status)

  "headPost": {
    object (Post)
  }
}
Campos
replies[]

object (Post)

Las respuestas a la primera publicación en el hilo de comentarios.

Campo de unión _comment_id.

_comment_id puede ser una de las siguientes opciones:

commentId

string

Es el ID del hilo de comentarios. Es el mismo ID que el comentario inicial.

Campo de unión _status.

_status puede ser una de las siguientes opciones:

status

enum (Status)

Es el estado del hilo de comentarios.

Campo de unión _head_post.

_head_post puede ser una de las siguientes opciones:

headPost

object (Post)

Es la primera publicación en el hilo de comentarios.

Publicar

Representación JSON
{

  "postId": string

  "content": string

  "authorName": string

  "modifiedTime": string
}
Campos

Campo de unión _post_id.

_post_id puede ser una de las siguientes opciones:

postId

string

Es el ID de la publicación.

Campo de unión _content.

_content puede ser una de las siguientes opciones:

content

string

Es el contenido de la publicación.

Campo de unión _author_name.

_author_name puede ser una de las siguientes opciones:

authorName

string

El nombre del autor de la publicación.

Campo de unión _modified_time.

_modified_time puede ser una de las siguientes opciones:

modifiedTime

string (Timestamp format)

Es la hora en que se modificó la publicación por última vez.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa los segundos de la hora UTC desde la época de Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de nanosegundos de la duración, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Debe estar entre 0 y 999,999,999 inclusive.

Estado

Define el estado de un hilo de comentarios.

Enums
STATUS_UNSPECIFIED
OPEN
RESOLVED

Anotaciones de herramientas

Sugerencia destructiva: ❌ | Sugerencia idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌

Alcances de la autorización

Se necesita uno de los siguientes alcances de OAuth:

  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.appdata
  • https://www.googleapis.com/auth/drive.file
  • https://www.googleapis.com/auth/drive.meet.readonly
  • https://www.googleapis.com/auth/drive.metadata
  • https://www.googleapis.com/auth/drive.metadata.readonly
  • https://www.googleapis.com/auth/drive.photos.readonly
  • https://www.googleapis.com/auth/drive.readonly