noco-ai-tools  ·  NocoBase Plugin  ·  MIT License

noco-ai-tools

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.

Download Plugin View Source
Privacy Policy Terms of Service Open Source · MIT
Powered by
Google APIs
About

What is noco-ai-tools?

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 manage calendar events — acting entirely on behalf of that individual user. No shared service accounts. No cross-user data access.

Why Google access is needed
  • Gmail (gmail.modify) — AI employees need to read incoming emails to understand context, send replies and new messages on the user's behalf, and mark emails as read after processing. Without this, the AI cannot act as the user's email assistant.
  • Google Calendar (calendar) — AI employees need to read the user's schedule to avoid conflicts, create new events when asked, update or cancel existing ones, and access shared calendars for team coordination. Without this, the AI cannot manage the user's calendar.
  • Identity (openid email profile) — needed to confirm which Google account the user connected, and to display it in the NocoBase interface so the user can verify and revoke their connection at any time.
Data handling
  • What is stored: only the OAuth access token, refresh token, and connected email address — encrypted at rest. No email content or calendar events are persisted.
  • How it is used: solely to make Gmail and Calendar API calls on behalf of the user who granted consent. Never used for advertising, analytics, or any secondary purpose.
  • Who can see it: only the authenticated NocoBase user whose account it belongs to. No cross-user access is possible.
  • Revocation: users can disconnect at any time from within NocoBase, or directly via Google Account settings. All tokens are immediately deleted.
Read the full Privacy Policy →
Data use & limited use policy

noco-ai-tools' use of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements. Google data is used only to provide the features described on this page and is not used for advertising, profiling, or any secondary purpose.

Terms of Service →
Capabilities

Everything your AI needs to act on
email & calendar

One plugin install, one consent per user. After that, AI employees work autonomously on behalf of the person they're talking to.

Gmail — Read & Send

List emails by search query, read full message bodies (text + HTML), send and reply on the user's behalf. Marks as read after processing.

Calendar — Full CRUD

List, create, update, and delete events on the primary calendar. List events on shared calendars. Invite attendees with a single tool call.

Per-user OAuth

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.

Automatic Token Refresh

Access tokens are refreshed transparently before every API call. Agents keep acting on the user's behalf without re-prompting for consent.

Variables & Secrets

Client ID and Secret come from NocoBase's built-in Secrets store. No config files, rotate credentials centrally in one place.

REST Endpoints

Every operation is also accessible over HTTP — useful for testing, scripts, or any client that can make authenticated POST requests.

AI Tools

Tools registered for AI employees

When the NocoBase AI plugin is active, these tools are automatically available. Bind them to any employee under Settings → AI.

Tool nameWhat it does
google.gmail.listEmailsList emails matching a Gmail search query (up to 50 results).
google.gmail.getEmailRead one email — headers, plain-text body, HTML body.
google.gmail.sendEmailSend or reply to an email on the connected user's behalf.
google.calendar.listCalendarsList all calendars the user owns or has been granted access to.
google.calendar.listEventsList events on a specific calendar within a time window.
google.calendar.createEventCreate an event with title, time, description, attendees, location.
google.calendar.updateEventUpdate any field of an existing event.
google.calendar.deleteEventDelete an event (optionally notify attendees).
google.calendar.listSharedEventsList events across all calendars shared with the user.
How it works

From install to AI agent in minutes

1

Install the plugin

Download the release package from GitHub and upload it through NocoBase's Plugin Manager interface. Enable noco-ai-tools — no restart needed.

2

Add Google OAuth credentials

Create an OAuth 2.0 client in Google Cloud Console. Paste the Client ID, Secret, and callback URL into NocoBase Variables & Secrets.

3

Users connect their accounts

Drop the Connect Google block on any page. Users click once, consent in a popup, and the block shows their connected email.

4

Assign tools to AI employees

In Settings → AI → Employees → Tools, add the google.* tools. The employee now acts on behalf of whichever user is chatting with it.

Get started

Install & configure

Plugin installation

  1. Download the latest release package from GitHub Releases.
  2. Upload it through the NocoBase Plugin Manager interface, or place it in the plugins storage folder of your NocoBase instance.
  3. Enable noco-ai-tools in Plugin Manager. No server restart is required.

Google Cloud setup

  1. Create an OAuth 2.0 Web Application client in Google Cloud Console.
  2. Add your NocoBase callback URL as an authorised redirect URI:
    https://your-app/api/googleConnections:callback
  3. Enable the Gmail API and Google Calendar API in your project.

NocoBase configuration

  1. Go to Settings → Variables and Secrets in NocoBase.
  2. Add google_client_id (Variable) and google_client_secret (Secret) from your Google Cloud OAuth client.
  3. Add google_redirect_uri (Variable) matching the callback URL you registered with Google.