gemini-cli-extensions / gemini-cli-extensions/workspace
[Feature Request] Add uploadFile tool to Google Drive folder
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 638
- Forks
- 107
- PR merge metrics
- No merged PRs in 30d
Description
Currently, the extension provides tools for searching, downloading, moving, renaming, and trashing files, but it lacks a direct way to upload local files from the filesystem to a Google Drive folder.
Adding an uploadFile (or writeFile) tool would allow the agent to autonomously move local assets, reports, or generated documents into a user's Drive workspace.
Use Case
A user wants to organize local files by having the agent identify the correct folders in Google Drive and then perform the upload automatically. Currently, the agent can map the files but must ask the user to perform the upload manually via the web UI.
Proposed Tool Specification
Tool Name: mcp_google-workspace_drive.uploadFile
Suggested Parameters:
- localPath (string, required): The absolute path to the file on the local machine.
- folderId (string, optional): The ID or URL of the destination folder in Google Drive. If omitted, upload to the root.
- fileName (string, optional): The name the file should have in Drive (defaults to the local filename).
- mimeType (string, optional): The MIME type of the file.
Expected Behavior
The tool should read the file from the local path and use the Google Drive API's files.create method (with media upload) to save it to the specified destination.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the existing Google Drive tools for searching, downloading, moving, renaming, and trashing files, then compare their entry points and parameter handling. Read the Google Drive API files.create media-upload requirements. Done means a new uploadFile tool accepts the proposed parameters, uploads the local file to the selected folder, and defaults the name and destination as described.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- google-cloud, typescript
- Domain
- api, cli, cloud
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100