Documentation Index
Fetch the complete documentation index at: https://docs.experio.cloud/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Integrations allow users to connect their own external accounts (e.g., Google Workspace) to Experio, giving AI assistants access to their email, calendar, files, and documents during conversations. As an administrator, you need to configure the OAuth credentials and enable the required Google APIs before users can connect.Prerequisites
- A Google Cloud project with billing enabled
- Access to the Google Cloud Console
- Admin access to Experio’s System Settings
Step 1: Create OAuth Credentials
Open Google Cloud Console
Go to APIs & Services > Credentials in your Google Cloud project.
Create OAuth Client ID
Click Create Credentials > OAuth 2.0 Client ID.For local development, also add:
- Application type: Web application
- Name: Experio Google Workspace Integration
- Authorized redirect URIs: Add your Experio callback URL:
Step 2: Enable Required Google APIs
In your Google Cloud project, go to APIs & Services > Library and enable each of the following APIs individually:| API | Purpose | Tools that require it |
|---|---|---|
| Gmail API | Read and search email messages | listGmailMessages, readGmailMessage, searchGmail |
| Google Drive API | List, search, and download files | searchDrive, listGoogleSheets, downloadFromDrive |
| Google Calendar API | Read calendar events | listCalendarEvents, getCalendarEvent |
| Google Docs API | Read document content | readGoogleDoc |
| Google Sheets API | Read spreadsheet data | getSpreadsheetInfo, readSpreadsheetRange |
- Go to APIs & Services > Library
- Search for the API name (e.g., “Gmail API”)
- Click on the API and press Enable
- Repeat for each API in the table above
Step 3: Configure in Experio
Navigate to Admin > Settings > System Settings and set the following values:| Setting | Category | Description |
|---|---|---|
GOOGLE_MCP_CLIENT_ID | AUTH | The OAuth Client ID from Step 1 |
GOOGLE_MCP_CLIENT_SECRET | AUTH | The OAuth Client Secret from Step 1 (stored encrypted) |
These credentials are shared across all users. Each user authenticates with their own Google account through the OAuth flow, but the OAuth application (Client ID/Secret) is configured once by the administrator.
Step 4: Test the Integration
- Log in as a regular user
- Navigate to Integrations from the sidebar
- Click Connect on the Google Workspace card
- Complete the Google sign-in flow
- Open a conversation and send a test message such as “List my recent emails”
- Verify that the assistant retrieves data from the connected Google account
How It Works
When a user connects their Google account:- Experio redirects the user to Google’s OAuth consent screen
- The user grants read-only access to the requested services
- Experio stores the encrypted OAuth tokens in the
UserMCPConnectionmodel - During chat, the Deep Agent’s router detects queries about Gmail, Drive, Calendar, or Docs
- The agent routes to a dedicated MCP retrieval phase that uses the user’s tokens to call Google APIs
- Results are included in the agent’s response with appropriate context
Agent Routing
The Deep Agent has anmcp_action routing path specifically for external service queries. When a user asks about their emails, calendar, or files, the router directs the query to this path instead of the standard knowledge base retrieval pipeline. If the user has not connected their account, the agent responds with guidance directing them to the Integrations page.
Troubleshooting
| Issue | Resolution |
|---|---|
| Users see “Connect” but the OAuth flow fails | Verify the redirect URI matches exactly, including the protocol (http vs https) |
| “Access blocked: Missing required parameter: client_id” | The GOOGLE_MCP_CLIENT_ID setting is empty or not configured. Set it in Admin > Settings > System Settings |
| ”Access blocked” error during OAuth | Check that the OAuth consent screen is configured and the required APIs are enabled |
| ”Permission denied for spreadsheet/doc” | The corresponding Google API (Sheets API, Docs API) is not enabled in the Cloud project. See Step 2 |
searchDrive returns “invalid_request” | Google Drive API is not enabled, or the OAuth token was created before the API was enabled. Enable the API and have the user reconnect |
| ”duplicate key” error on reconnect | This is handled automatically — Experio cleans up stale connections during OAuth callback |
| Agent does not use Google data | Ensure the assistant uses Deep Agent mode — other agent modes do not support MCP integrations |
| Agent says “I can’t access your Gmail” despite tools succeeding | Start a new chat — the previous conversation may have stale state from before the connection was established |
| Tokens expire or stop working | Users can disconnect and reconnect from the Integrations page to refresh tokens |