Google Colab · Capability

Google Colab Notebooks via Drive API

Colab notebooks are stored as Google Drive files with the MIME type application/vnd.google.colaboratory. This API specification covers the Google Drive v3 endpoints commonly used to manage Colab notebooks, including listing, creating, updating, and sharing notebooks.

Run with Naftiko GoogleColabAPI

What You Can Do

GET
Listnotebooks — Google Colab List Colab notebooks
/files
POST
Createnotebook — Google Colab Create a Colab notebook
/files
GET
Getnotebook — Google Colab Get notebook metadata
/files/{fileId}
PATCH
Updatenotebook — Google Colab Update notebook metadata
/files/{fileId}
DELETE
Deletenotebook — Google Colab Delete a notebook
/files/{fileId}
POST
Copynotebook — Google Colab Copy a notebook
/files/{fileId}/copy
GET
Listpermissions — Google Colab List notebook permissions
/files/{fileId}/permissions
POST
Createpermission — Google Colab Share a notebook
/files/{fileId}/permissions

MCP Tools

listnotebooks

Google Colab List Colab notebooks

read-only idempotent
createnotebook

Google Colab Create a Colab notebook

getnotebook

Google Colab Get notebook metadata

read-only idempotent
updatenotebook

Google Colab Update notebook metadata

deletenotebook

Google Colab Delete a notebook

idempotent
copynotebook

Google Colab Copy a notebook

listpermissions

Google Colab List notebook permissions

read-only idempotent
createpermission

Google Colab Share a notebook

Capability Spec

google-colab-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Google Colab Notebooks via Drive API
  description: Colab notebooks are stored as Google Drive files with the MIME type application/vnd.google.colaboratory. This
    API specification covers the Google Drive v3 endpoints commonly used to manage Colab notebooks, including listing, creating,
    updating, and sharing notebooks.
  tags:
  - Google
  - Colab
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: google-colab
    baseUri: https://www.googleapis.com/drive/v3
    description: Google Colab Notebooks via Drive API HTTP API.
    authentication:
      type: bearer
      token: '{{GOOGLE_COLAB_TOKEN}}'
    resources:
    - name: files
      path: /files
      operations:
      - name: listnotebooks
        method: GET
        description: Google Colab List Colab notebooks
        inputParameters:
        - name: q
          in: query
          type: string
          description: Query string for filtering (e.g. mimeType filter for Colab files)
        - name: pageSize
          in: query
          type: integer
          description: Maximum number of files to return
        - name: pageToken
          in: query
          type: string
          description: Token for next page of results
        - name: fields
          in: query
          type: string
          description: Fields to include in the response
        - name: orderBy
          in: query
          type: string
          description: Sort order (e.g. modifiedTime desc)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createnotebook
        method: POST
        description: Google Colab Create a Colab notebook
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: files-fileid
      path: /files/{fileId}
      operations:
      - name: getnotebook
        method: GET
        description: Google Colab Get notebook metadata
        inputParameters:
        - name: fields
          in: query
          type: string
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatenotebook
        method: PATCH
        description: Google Colab Update notebook metadata
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deletenotebook
        method: DELETE
        description: Google Colab Delete a notebook
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: files-fileid-copy
      path: /files/{fileId}/copy
      operations:
      - name: copynotebook
        method: POST
        description: Google Colab Copy a notebook
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: files-fileid-permissions
      path: /files/{fileId}/permissions
      operations:
      - name: listpermissions
        method: GET
        description: Google Colab List notebook permissions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createpermission
        method: POST
        description: Google Colab Share a notebook
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: google-colab-rest
    description: REST adapter for Google Colab Notebooks via Drive API.
    resources:
    - path: /files
      name: listnotebooks
      operations:
      - method: GET
        name: listnotebooks
        description: Google Colab List Colab notebooks
        call: google-colab.listnotebooks
        outputParameters:
        - type: object
          mapping: $.
    - path: /files
      name: createnotebook
      operations:
      - method: POST
        name: createnotebook
        description: Google Colab Create a Colab notebook
        call: google-colab.createnotebook
        outputParameters:
        - type: object
          mapping: $.
    - path: /files/{fileId}
      name: getnotebook
      operations:
      - method: GET
        name: getnotebook
        description: Google Colab Get notebook metadata
        call: google-colab.getnotebook
        outputParameters:
        - type: object
          mapping: $.
    - path: /files/{fileId}
      name: updatenotebook
      operations:
      - method: PATCH
        name: updatenotebook
        description: Google Colab Update notebook metadata
        call: google-colab.updatenotebook
        outputParameters:
        - type: object
          mapping: $.
    - path: /files/{fileId}
      name: deletenotebook
      operations:
      - method: DELETE
        name: deletenotebook
        description: Google Colab Delete a notebook
        call: google-colab.deletenotebook
        outputParameters:
        - type: object
          mapping: $.
    - path: /files/{fileId}/copy
      name: copynotebook
      operations:
      - method: POST
        name: copynotebook
        description: Google Colab Copy a notebook
        call: google-colab.copynotebook
        outputParameters:
        - type: object
          mapping: $.
    - path: /files/{fileId}/permissions
      name: listpermissions
      operations:
      - method: GET
        name: listpermissions
        description: Google Colab List notebook permissions
        call: google-colab.listpermissions
        outputParameters:
        - type: object
          mapping: $.
    - path: /files/{fileId}/permissions
      name: createpermission
      operations:
      - method: POST
        name: createpermission
        description: Google Colab Share a notebook
        call: google-colab.createpermission
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: google-colab-mcp
    transport: http
    description: MCP adapter for Google Colab Notebooks via Drive API for AI agent use.
    tools:
    - name: listnotebooks
      description: Google Colab List Colab notebooks
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: google-colab.listnotebooks
      with:
        q: tools.q
        pageSize: tools.pageSize
        pageToken: tools.pageToken
        fields: tools.fields
        orderBy: tools.orderBy
      inputParameters:
      - name: q
        type: string
        description: Query string for filtering (e.g. mimeType filter for Colab files)
      - name: pageSize
        type: integer
        description: Maximum number of files to return
      - name: pageToken
        type: string
        description: Token for next page of results
      - name: fields
        type: string
        description: Fields to include in the response
      - name: orderBy
        type: string
        description: Sort order (e.g. modifiedTime desc)
      outputParameters:
      - type: object
        mapping: $.
    - name: createnotebook
      description: Google Colab Create a Colab notebook
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: google-colab.createnotebook
      outputParameters:
      - type: object
        mapping: $.
    - name: getnotebook
      description: Google Colab Get notebook metadata
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: google-colab.getnotebook
      with:
        fields: tools.fields
      inputParameters:
      - name: fields
        type: string
        description: fields
      outputParameters:
      - type: object
        mapping: $.
    - name: updatenotebook
      description: Google Colab Update notebook metadata
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: google-colab.updatenotebook
      outputParameters:
      - type: object
        mapping: $.
    - name: deletenotebook
      description: Google Colab Delete a notebook
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: google-colab.deletenotebook
      outputParameters:
      - type: object
        mapping: $.
    - name: copynotebook
      description: Google Colab Copy a notebook
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: google-colab.copynotebook
      outputParameters:
      - type: object
        mapping: $.
    - name: listpermissions
      description: Google Colab List notebook permissions
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: google-colab.listpermissions
      outputParameters:
      - type: object
        mapping: $.
    - name: createpermission
      description: Google Colab Share a notebook
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: google-colab.createpermission
      outputParameters:
      - type: object
        mapping: $.
binds:
- namespace: env
  keys:
    GOOGLE_COLAB_TOKEN: GOOGLE_COLAB_TOKEN