Connect NocoBase AI agents to each user's Google account via per-user OAuth. Every tool call runs under the caller's own tokens — no shared service accounts, no data leakage between users.
noco-ai-tools is an open-source NocoBase plugin that connects each user's Google account to their NocoBase AI employees via OAuth 2.0. Once a user grants consent, AI employees can read and send emails, and create or update calendar events — acting entirely on behalf of that individual user.
gmail.modify scope).calendar scope).openid email profile scopes).Used by NocoBase workspace administrators and their end-users. Each user connects their own Google account — no shared service account. Data from Google APIs is never stored beyond the OAuth tokens required to make API calls, and is never sold or shared with third parties.
Read the full Privacy Policy →One plugin install, one consent per user. After that, AI employees work autonomously on behalf of the person they're talking to.
List emails by search query, read full message bodies (text + HTML), send and reply on the user's behalf. Marks as read after processing.
List, create, update, and delete events on the primary calendar. List events on shared calendars. Invite attendees with a single tool call.
Each user connects their own Google account. User A's AI employee cannot access User B's data. Tokens are encrypted at rest by NocoBase.
Access tokens are refreshed transparently before every API call. Agents keep acting on the user's behalf without re-prompting for consent.
Client ID and Secret come from NocoBase's built-in Secrets store. No config files, rotate credentials centrally in one place.
Every operation is also accessible over HTTP — useful for testing, scripts, or any client that can make authenticated POST requests.
When the NocoBase AI plugin is active, these tools are automatically available. Bind them to any employee under Settings → AI.
| Tool name | What it does |
|---|---|
google.gmail.listEmails | List emails matching a Gmail search query (up to 50 results). |
google.gmail.getEmail | Read one email — headers, plain-text body, HTML body. |
google.gmail.sendEmail | Send or reply to an email on the connected user's behalf. |
google.calendar.listCalendars | List all calendars the user owns or has been granted access to. |
google.calendar.listEvents | List events on a specific calendar within a time window. |
google.calendar.createEvent | Create an event with title, time, description, attendees, location. |
google.calendar.updateEvent | Update any field of an existing event. |
google.calendar.deleteEvent | Delete an event (optionally notify attendees). |
google.calendar.listSharedEvents | List events across all calendars shared with the user. |
Download the release package from GitHub and upload it through NocoBase's Plugin Manager interface. Enable noco-ai-tools — no restart needed.
Create an OAuth 2.0 client in Google Cloud Console. Paste the Client ID, Secret, and callback URL into NocoBase Variables & Secrets.
Drop the Connect Google block on any page. Users click once, consent in a popup, and the block shows their connected email.
In Settings → AI → Employees → Tools, add the google.* tools. The employee now acts on behalf of whichever user is chatting with it.
https://your-app/api/googleConnections:callback