Skip to content
Agentmart
Submit a tool

google-workspace

This skill should be used when the user asks to "check my email", "read Gmail", "list calendar events", "check my schedule", "list Drive files", "upload to…

Skill by ar90n

IndexedMIT
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/ar90n-google-workspace

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

This skill should be used when the user asks to "check my email", "read Gmail", "list calendar events", "check my schedule", "list Drive files", "upload to Drive", "read spreadsheet", "create a Google Doc", "send an email", or needs to interact with any Google Workspace service (Gmail, Calendar, Drive, Sheets, Docs, Chat).

Use cases: documents, spreadsheets, productivity

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/google-workspace

What's inside

Skill name
google-workspace
Description
This skill should be used when the user asks to "check my email", "read Gmail", "list calendar events", "check my schedule", "list Drive files", "upload to Drive", "read spreadsheet", "create a Google Doc", "send an email", or needs to interact with any Google Workspace service (Gmail, Calendar, Drive, Sheets, Docs, Chat).
License
MIT
Instructions
109 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Google Workspace

Interact with Google Workspace services via the `gws` CLI.

Requires authentication: run `bin/claude-inbox-setup gws-login` first.

## Command Syntax

```bash
gws <service> <method> --params '{"key":"value"}'
```

Output is JSON. Parse with `jq`.

## Gmail

```bash
# List recent messages
gws gmail users.messages.list --params '{"userId":"me","maxResults":10}'

# Get a specific message (full body)
gws gmail users.messages.get --params '{"userId":"me","id":"MSG_ID","format":"full"}'

# Search messages
gws gmail users.messages.list --params '{"userId":"me","q":"from:someone@example.com","maxResults":5}'

# List labels
gws gmail users.labels.list --params '{"userId":"me"}'
```

### Sending Email

To send email, construct a base64url-encoded RFC 2822 message:

```bash
raw=$(printf 'To: recipient@example.com\r\nSubject: Hello\r\nContent-Type: text/plain; charset=utf-8\r\n\r\nMessage body here' | base64 -w0 | tr '+/' '-_' | tr -d '=')
gws gmail users.messages.send --params "{\"userId\":\"me\",\"requestBody\":{\"raw\":\"$raw\"}}"
```

## Calendar

```bash
# List upcoming events
gws calendar events.list --params '{"calendarId":"primary","timeMin":"2026-03-05T00:00:00Z","maxResults":10,"singleEvents":true,"orderBy":"startTime"}'

# Get a specific event
gws calendar events.get --params '{"calendarId":"primary","eventId":"EVENT_ID"}'

# Create an event
gws calendar events.insert --params '{"calendarId":"primary","requestBody":{"summary":"Meeting","start":{"dateTime":"2026-03-06T10:00:00+09:00"},"end":{"dateTime":"2026-03-06T11:00:00+09:00"}}}'

# List calendars
gws calendar calendarList.list
```

## Drive

```bash
# List files
gws drive files.list --params '{"pageSize":10,"q":"trashed=false","fields":"files(id,name,mimeType,modifiedTime)"}'

# Search files by name
gws drive files.list --params '{"q":"name contains '\''report'\'' and trashed=false","pageSize":10}'

# Get file metadata
gws drive files.get --params '{"fileId":"FILE_ID","fields":"id,name,mimeType,size,modifiedTime,webViewLink"}'

# Download file content (text-based)
gws drive files.export --params '{"fileId":"FILE_ID","mimeType":"text/plain"}'
```

## Sheets

```bash
# Read cell range
gws sheets spreadsheets.values.get --params '{"spreadsheetId":"SHEET_ID","range":"Sheet1!A1:D10"}'

# Write to cells
gws sheets spreadsheets.values.update --params '{"spreadsheetId":"SHEET_ID","range":"Sheet1!A1","valueInputOption":"USER_ENTERED","requestBody":{"values":[["Header1","Header2"],["val1","val2"]]}}'

# Append rows
gws sheets spreadsheets.values.append --params '{"spreadsheetId":"SHEET_ID","range":"Sheet1!A1","valueInputOption":"USER_ENTERED","requestBody":{"values":[["new1","new2"]]}}'
```

## Docs

```bash
# Get document content
gws docs documents.get --params '{"documentId":"DOC_ID"}'

# Create a new document
gws docs documents.create --params '{"requestBody":{"title":"New Document"}}'
```

## Workflow

1. Run the appropriate `gws` command
2. Parse the JSON output with `jq`
3. Present results to the user in a readable format
4. For multi-step operations (e.g., "summarize my latest emails"), chain commands

## Error Handling

- **Not authenticated**: Report that Google Workspace is not configured and suggest running `bin/claude-inbox-setup gws-login`
- **API error**: Report the error message from the response
- **Permission denied**: The OAuth scope may not cover this API. Suggest re-running `gws auth login` with the needed scope
- **Rate limit**: Wait and retry once

From ar90n/claude-inbox, MIT.

More from ar90n/claude-inbox

Signals

Stars
0
Forks
0
Open issues
0
Last commit (this folder)
Mar 5, 2026 (7 months ago)
Last release
Mar 11, 2026 (7 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from ar90n

Cite this page

google-workspace skill. Agent Mart. https://agentmart.dev/skills/ar90n-google-workspace (last updated 2026-10-24)