SharePoint + OneDrive
Let an Assistant read and optionally write files in a SharePoint site or a user's OneDrive. Like Google Drive, it is a reusable connection configured under Project settings → Integrations (or Organization settings → Integrations to share it with every project) and selected per Assistant. Authentication is app-only through a Microsoft Entra (Azure AD) app registration.
Register the Microsoft Entra app
-
In the Azure portal open Microsoft Entra ID → App registrations → New registration.
-
Fill in:
Field Value Name e.g. MINEO SharePoint AssistantSupported account types Accounts in this organizational directory only (single tenant) Redirect URI leave empty — MINEO uses app-only flow -
From the new app's Overview copy the Application (client) ID and Directory (tenant) ID — you will paste them into MINEO.
-
Open Certificates & secrets → New client secret, set a description and expiry, and copy the Value immediately (it is shown only once).
-
Open API permissions → Add a permission → Microsoft Graph → Application permissions and add:
Permission Required for Notes Sites.Selectedlist, read, create, delete, rename Granted per-site (next step) Sites.Read.All(orSites.ReadWrite.All)sharepoint_search_filesonlyTenant-wide; Graph does not honor Sites.Selectedon/root/search -
Click Grant admin consent for
<tenant>at the top of the permissions page. -
Authorize the app on the target site.
Sites.Selectedrequires an explicit per-site grant. A tenant admin runs this once against the Graph API (replace the placeholders):POST https://graph.microsoft.com/v1.0/sites/{site-id}/permissionsAuthorization: Bearer {admin-token}Content-Type: application/json{"roles": ["write"],"grantedToIdentities": [{"application": {"id": "{client-id}","displayName": "MINEO SharePoint Assistant"}}]}Use
"read"instead of"write"if the Assistant only needs read access.
Search and Sites.Selected. Microsoft Graph documents that /drive/root/search(q=) does not support Sites.Selected. If you provision the app with Sites.Selected only, every other tool works but sharepoint_search_files returns 403 with an actionable hint to add Sites.Read.All tenant-wide.
Find the Site ID
The site id is a comma-separated triple {hostname},{siteCollectionId},{webId}. Get it with one Graph call against the site's hostname/path:
GET https://graph.microsoft.com/v1.0/sites/{hostname}:/sites/{site-path}
Authorization: Bearer {token}
For example, https://graph.microsoft.com/v1.0/sites/contoso.sharepoint.com:/sites/Marketing returns the site object whose id field is exactly what MINEO expects.
A user's OneDrive for Business is itself a site collection, so Site ID can point at either a SharePoint site or a OneDrive.
Create the connection in MINEO
Go to Project settings → Integrations (or Organization settings → Integrations) and add a SharePoint integration:
| Field | Description |
|---|---|
| Name | A label to identify this connection. |
| Tenant ID | The Directory (tenant) ID from the app's Overview. |
| Client ID | The Application (client) ID from the app's Overview. |
| Client secret | The secret Value copied in step 4. Stored write-only and never shown again. |
| Site ID | The target site id, e.g. contoso.sharepoint.com,<siteCollectionId>,<webId>. Required. |
Use it in an Assistant
- Open the Assistant's Integrations tab and pick the connection under SharePoint + OneDrive → Connection.
- Optionally set a Document library (drive) ID to target a specific library; leave empty for the site's default drive.
- Enable SharePoint & OneDrive write access to let the Assistant create, rename, and delete files.