An AI agent skill for interacting with Google Chat - list spaces, send messages, read conversations, and manage DMs. Works with Claude Code, Gemini CLI, Cursor, OpenAI Codex, Goose, and other AI clients supporting the Agent Skills Standard.
- List Spaces - View all Chat spaces you're a member of
- Find Spaces - Search for spaces by name
- Send Messages - Post messages to any space
- Direct Messages - Send DMs to users
- Read Messages - Get conversation history from spaces
- Create Spaces - Set up new spaces with members
Lightweight alternative to the full Google Workspace MCP server.
⚠️ Requires Google Workspace account. Personal Gmail accounts are not supported.
pip install keyringpython scripts/auth.py loginThis opens a browser for Google OAuth. Tokens are stored securely in your system keyring.
python scripts/auth.py status# List all spaces you're a member of
python scripts/chat.py list-spaces
# Find a space by name
python scripts/chat.py find-space "Project Alpha"
# Get messages from a space
python scripts/chat.py get-messages spaces/AAAA123 --limit 10
# Send a message to a space
python scripts/chat.py send-message spaces/AAAA123 "Hello team!"
# Send a direct message
python scripts/chat.py send-dm user@example.com "Hey, quick question..."
# Find or create DM space with someone
python scripts/chat.py find-dm user@example.com
# List threads in a space
python scripts/chat.py list-threads spaces/AAAA123
# Create a new space with members
python scripts/chat.py setup-space "New Project" user1@example.com user2@example.com| Command | Description | Arguments |
|---|---|---|
list-spaces |
List all spaces | - |
find-space <name> |
Find space by name | space name |
get-messages <space> |
Get messages from space | space ID, --limit |
send-message <space> <text> |
Send message | space ID, message text |
send-dm <email> <text> |
Send direct message | user email, message text |
find-dm <email> |
Find/create DM space | user email |
list-threads <space> |
List threads | space ID |
setup-space <name> [emails...] |
Create space | name, member emails |
Google Chat uses spaces/AAAA123 format for space IDs. Get space names from list-spaces or find-space output.
Tokens stored securely using the system keyring:
- macOS: Keychain
- Windows: Windows Credential Locker
- Linux: Secret Service API (GNOME Keyring, KDE Wallet)
Service name: google-chat-skill-oauth
Run python scripts/auth.py login to authenticate.
Verify the space ID format (spaces/AAAA123). Use list-spaces to get valid IDs.
You may not be a member of the space. Check your Google Chat membership.
Apache 2.0