ClawLink

How to connect Google Drive to Hermes Agent

Connect Google Drive to Hermes Agent with no Google Cloud project, no OAuth client, and no credentials JSON. Hosted OAuth, 76 Drive tools, and fixes for the Drive API errors agents actually hit.

Get started for free
Hermes Agent
Hermes Agent
ClawLink
ClawLink
Google Drive
Google Drive
Google DriveOAUTH2MCP

Upload, search, and manage files. Once connected, Hermes Agent can read and act on Google Drive from chat — pairing, token refresh, and tool wiring handled for you.

76 tools

Most guides for giving Hermes Agent Google Drive access start with registering your own OAuth app or pasting API keys into env files, then leave the token refresh and tool wiring to you. ClawLink gives Hermes a more practical Google Drive setup: pair once in the browser and your always-on Hermes agent can act on Google Drive for you, reading and doing real work on your behalf with no auth, token refresh, or tool wiring to build yourself.

Copy this prompt into Hermes to install the plugin and pair your account.

Prompt for Hermes
Set up ClawLink for Hermes and tell me when it's ready.

1. Install the plugin:
hermes plugins install ClawLink-HQ/hermes-plugin --enable

2. Start pairing. It prints an approval link, so show me the link and stop, don't wait:
hermes clawlink begin

3. I'll approve it in my browser, then reply "approved".

4. When I say approved, finish setup:
hermes clawlink finish

5. Then run `hermes clawlink test` and tell me whether ClawLink is ready.

Setup

It takes three steps to connect Hermes to Google Drive.

  1. 1

    Install and pair

    Install the ClawLink plugin, then pair Hermes with a one-time browser approval:

    hermes plugins install ClawLink-HQ/hermes-plugin --enable
  2. 2

    Connect Google Drive

    One-click OAuth in the dashboard.

  3. 3

    Use it from chat

    Ask Hermes Agent: "What can you do with Google Drive?"

The whole pairing handshake, start to finish. Run these once, then connect Google Drive in the dashboard:

hermes plugins install ClawLink-HQ/hermes-plugin --enable
hermes clawlink begin     # approve the link in your browser
hermes clawlink finish
hermes clawlink test

hermes clawlink test is the one that tells you pairing actually worked. If it fails, run hermes clawlink begin again for a fresh link: approval links expire. Start a new chat after connecting so Hermes reloads its tool catalog.

Using a different agent?

The Hermes plugin is one client of ClawLink's MCP server. Claude Code, Cursor, Codex, or any agent that can run a shell command pairs with the same ClawLink account through the CLI:

npx -y @useclawlink/cli login

login opens the same browser approval and stores a credential locally. Once Google Drive is connected in the dashboard, that agent calls the same 76 Google Drive tools over MCP. Full setup for MCP clients and shell agents: connect apps to any AI agent.

Google Drive MCP for Hermes

Looking for a Google Drive MCP server for Hermes Agent? ClawLink connects Google Drive to Hermes Agent and exposes 76 Google Drive tools your agent can call over MCP, with hosted auth and nothing to run or maintain yourself. Using OpenClaw instead? The OpenClaw Google Drive integration runs on the same hosted Google provider and the same 76 tools; OpenClaw installs ClawLink through a ClawHub skill instead of the Hermes pairing commands.

The manual route to this integration asks you to create a Google Cloud project, enable the Drive API, mint a Desktop-type OAuth client, and point a setup script at the downloaded client-secret JSON. The gateway route asks you to hand-edit ~/.hermes/config.yaml with a copied API key. ClawLink's route is the four pairing commands below and one Connect click, because the verified Google OAuth app is ours to run: you approve Google's consent screen and the 76 tools work from the next message, with no credential file on the machine running Hermes.

What the Hermes Agent Google Drive integration can do

76 Google Drive tools are ready for Hermes Agent once the account is connected. The 30 below are the ones people reach for most; your agent can call all 76.

30 of 76 Google Drive tools for Hermes

ToolWhat it does
Copy file advanced googledrive_copy_file_advancedCopy a file with advanced options
Create comment googledrive_create_commentCreate a comment on a Drive file
Create drive googledrive_create_driveCreate a new shared drive
Create file googledrive_create_fileCreate a new file or folder with metadata
Create file from text googledrive_create_file_from_textCreate a Drive file from text content
Create folder googledrive_create_folderCreate a new folder in Google Drive
Create permission googledrive_create_permissionShare a file or folder with users or make it public
Create reply googledrive_create_replyReply to a comment on a Drive file
Create shortcut to file googledrive_create_shortcut_to_fileCreate a shortcut to an existing Drive item
Download file googledrive_download_fileDownload a file from Google Drive
Edit file googledrive_edit_fileUpdate a Drive file's content (non-Google Workspace)
Export google workspace file googledrive_export_google_workspace_fileExport a Google Workspace doc to a specific format
Find file googledrive_find_fileSearch for files in Google Drive by name, MIME type, or query
Find folder googledrive_find_folderFind a folder in Google Drive by name
Get about googledrive_get_aboutGet user, Drive, and storage quota info
Get drive googledrive_get_driveGet a shared drive by ID
Get file metadata googledrive_get_file_metadataGet a file's metadata by ID
List comments googledrive_list_commentsList comments on a Google Drive file
List permissions googledrive_list_permissionsList a file's sharing permissions
List replies googledrive_list_repliesList replies to a comment
List revisions googledrive_list_revisionsList a file's revision history
List shared drives googledrive_list_shared_drivesList the user's shared drives
Move file googledrive_move_fileMove a file to a different folder
Update file put googledrive_update_file_putUpdate file metadata like name, description, or parents
Upload file googledrive_upload_fileUpload a file to Google Drive
Upload from URL googledrive_upload_from_urlFetch a URL and upload it to Google Drive
Download file operation googledrive_download_file_operationDownload file content using long-running operations
Generate IDS googledrive_generate_idsGenerates a set of file IDs which can be provided in create or copy requests
Get app googledrive_get_appGet information about a specific Drive app by ID
Get changes start page token googledrive_get_changes_start_page_tokenGet the starting pageToken for listing future changes in Google Drive

Try it: find the Google Drive tool you need

Browse the 30 Google Drive tools

Click any tool to see exactly what Hermes can do and copy a ready-to-use prompt.

Example prompts

Find the PDF in my Google Drive whose name contains proposal, download it, and give me a one-paragraph summary plus any deadlines it mentions.

List everything in my Invoices folder, then move any file whose name starts with 2025 into the Archive folder, pausing between moves so we stay inside Drive's rate limits.

Create a file in my Drive called Meeting notes 2026-08-02 from the text I paste next, and share the link back to me.

If a Drive call fails saying fileId is required, run googledrive_find_file with a name query first and retry the call with the real id from the results instead of asking me.

What the Google Drive tools actually expect

The argument rules behind the Drive failures we log in production, not a restatement of Google's docs.

  • Every file operation wants the file ID. arguments.fileId is required leads our Drive failure log, 62 rows. The id lives in the file's URL and in every googledrive_find_file result; one search call first ends the problem.
  • googledrive_find_file takes Drive query syntax in q (name contains 'report' and mimeType = 'application/pdf'), and a malformed expression earns Google's bare 400 Invalid Value with no field named. Simplify to one clause, confirm rows, then rebuild.
  • googledrive_list_children_v2 lists a folder; googledrive_find_file searches. The invented names agents reach for (search_files, list_files, list_folder) fail with a not-found error that suggests the real tools; take the suggestion.
  • Uploads cap at 5 MB and need reachable bytes. A local path in s3key fails with s3key must be a PUBLIC https:// URL; the hosted runtime cannot read the agent machine's disk. Attach the file in chat, host it at a plain HTTPS URL, or use googledrive_create_file_from_text for text.
  • Docs, Sheets and Slides export; everything else downloads. googledrive_export_google_workspace_file rejects regular files with a 400 pointing you at googledrive_download_file.
  • googledrive_copy_file_advanced pauses for explicit confirmation. That is the write guard working; the agent should surface the question, not retry.
  • File-by-file loops hit Drive's per-minute limits. Our 429 rows (Too many requests. Try again shortly.) are almost all bulk move and download loops. Pace the loop, wait, retry; reconnecting has no effect on rate limits.

The alternative to ClawLink is usually manual OAuth app setup plus your own token handling, permission troubleshooting, and tool plumbing for Hermes Agent. That is fine if you want to build and maintain the integration yourself. Most teams just want Google Drive working from chat.

ManualClawLink
Connection flowRegister a Google Drive app, configure redirect URLs, manage consent details, and reconnect users when auth settings drift.Users connect Google Drive through the hosted browser flow and ClawLink keeps the token lifecycle out of your app code.
Ongoing maintenanceYou own refresh logic, permission debugging, environment config, and every provider-specific edge case for Google Drive.ClawLink handles the repetitive integration plumbing so your team can focus on the workflow instead of the infrastructure.
Agent usabilityYou still need to expose the right Google Drive actions to the runtime in a format your agent can reliably use.76 tools for Google Drive are already exposed through ClawLink, so the agent can read and act from chat immediately.

Composio also exposes Google Drive to AI agents. It is developer infrastructure: Python and TypeScript SDKs, an MCP server, and a catalog past 1,000 apps, aimed at teams shipping agent products. ClawLink is built for Hermes Agent users instead. You install the plugin once, connect Google Drive in the browser, and the 76 tools above work from chat. There is no SDK, no config file, and no API key handling. Choosing between them? Read the full Composio alternatives comparison.

Troubleshooting

Hermes paired but still can't use Google Drive

Pairing is a two-step handshake: run hermes clawlink begin, approve the link in your browser, then run hermes clawlink finish. If you ran finish before approving, or the approval link expired, run hermes clawlink begin again to get a fresh link. Confirm the plugin was installed with --enable, then verify with hermes clawlink test.

Connection succeeds but no tools appear

Reconnect Google Drive from the dashboard, then start a fresh chat if the runtime still has the old tool catalog loaded.

"Tool schema not loaded yet" error when calling Google Drive tools

Google Drive tool schemas load on demand the first time a tool runs and are cached after that, so this error usually clears on its own: wait a few seconds and retry the same request. If every Google Drive call keeps failing with it in a fresh chat, reconnect from the dashboard, and contact support if it still persists — that pattern points to a configuration problem on our side, not something you can fix by reconnecting again.

Google Drive returns 403 or "permission denied" on one action while others work

Two usual causes. The connected account may not have access to the specific workspace, inbox, store, or project in the request — check that first. If access looks right, the agent may have sent a placeholder value (like "YOUR_ID" or an example id from documentation) instead of a real one: ask it to run a list or search tool first, then retry the action with a real id from those results. Most failures at this stage are one of these two, not ClawLink bugs.

"Request had insufficient authentication scopes" (403) from Google Drive

This is about the OAuth grant, not the file, and the giveaway is the word scope. The connection's Google grant is missing the Drive permission ClawLink requests, either because the consent checkbox was unticked or because the grant predates the current permission set. In our logs it lands on googledrive_find_file and googledrive_find_folder first. Deleting a local token.json is the standard internet advice and there is no such file in a hosted flow; the actual fix is to reconnect Google Drive from the ClawLink dashboard and approve the Drive permission this time.

"arguments.fileId is required" from Google Drive

Hermes described a file by name where the tool needed its id. Have it run googledrive_find_file with a name contains query and reuse the id from the results, or paste the file's URL into chat, which carries the id inside it. This is the single most common Drive failure we log and the fix never varies.

400 "Invalid Value" from googledrive_find_file

The q expression or an orderBy value did not parse, and Google names no field in this error. Ask the agent to retry with only name contains '\<word>', verify results arrive, then add the mimeType or date conditions back one at a time. The broken clause identifies itself within a call or two.

"s3key must be a PUBLIC https:// URL" when uploading to Google Drive

A local file path reached the hosted runtime, which cannot read the machine Hermes runs on. Give the agent a public HTTPS link to the file, or paste the content and use googledrive_create_file_from_text. Uploads through this tool cap at 5 MB either way.

"Connected account is not in an ACTIVE state" (INITIALIZING or REVOKED) from Google Drive

INITIALIZING means consent never completed; finish the OAuth flow in one browser session. REVOKED means the grant was withdrawn in the Google account afterwards. Either way, reconnect Google Drive from the ClawLink dashboard, approve the consent screen, and start a fresh chat so Hermes reloads the connection.

OAuth finished in the browser but the account is still missing

Try reconnecting Google Drive and complete the consent flow in the same browser session. Partial OAuth approvals or switching accounts mid-flow can leave the connection incomplete.

FAQ

Is there a Hermes Agent Google Drive integration?

Yes. ClawLink is the fastest way to connect Hermes to Google Drive: link your Google Drive account once in the browser and Hermes Agent can call the Google Drive API through 76 ready-made tools — no custom code or token handling.

How do I connect Google Drive to Hermes with ClawLink?

Install the plugin with hermes plugins install ClawLink-HQ/hermes-plugin --enable, then pair once: run hermes clawlink begin, approve the link in your browser, and run hermes clawlink finish. Connect Google Drive in the dashboard and Hermes can use it from the next message — no config files or API keys to manage.

How long does it take to connect Google Drive to Hermes Agent?

About two minutes. Sign in, click Connect next to Google Drive in the dashboard, authenticate, and Hermes Agent can use it from the next chat message.

Why use ClawLink instead of wiring Google Drive up myself?

The alternative to ClawLink is usually manual OAuth app setup plus your own token handling, permission troubleshooting, and tool plumbing for Hermes Agent. That is fine if you want to build and maintain the integration yourself. Most teams just want Google Drive working from chat.

Do I need my own Google Cloud project or OAuth app to give Hermes access to Drive?

No. The Cloud project, the API you enable, the Desktop OAuth client, the client-secret JSON: that inventory exists so that someone owns a Google OAuth app, and with ClawLink that someone is us. You pair Hermes with the four commands above, click Connect, and approve on Google's own consent screen. Nothing gets created in a Cloud Console and nothing gets downloaded.

Can Hermes use Google Drive without an API key?

Yes, because API keys were never the mechanism for private data in the first place: Google scopes them to public information only. Every real Drive integration is OAuth underneath, and the differences are about who runs the OAuth app and where the token lives. Here ClawLink runs the app and holds the token, so the no-API-key promise in this page's title is a statement about architecture, not a workaround.

What can ClawLink actually do in my Drive, and how do I take it back?

The grant is Google's full drive scope, read and write to what your account can see; 76 tools including upload, move and delete need exactly that, and pretending otherwise would be false comfort. We verified the scope string on a live connection. Your controls: Google's consent screen states the grant before it exists, sensitive operations pause for confirmation before running, revocation is immediate from Third-party apps and services in your Google account or by deleting the connection in the dashboard, and ClawLink deletes tool execution logs after 90 days. The strongest option remains connecting a Google account that only holds what the agent should touch.

Hermes paired but still can't use Google Drive

Pairing is a two-step handshake: run hermes clawlink begin, approve the link in your browser, then run hermes clawlink finish. If you ran finish before approving, or the approval link expired, run hermes clawlink begin again to get a fresh link. Confirm the plugin was installed with --enable, then verify with hermes clawlink test.