# How to Fix ChatGPT Microsoft 365 Connector Permission Errors and Admin Consent

Connecting ChatGPT to Microsoft 365 often halts at a Microsoft Entra ID admin consent screen because the connector requests broad organization-wide permissions. Directory administrators can approve the application with scoped user assignments, but enterprise security policies frequently restrict tenant-wide AI grants. Deploying a scoped workspace gateway with Fastio synchronizes designated folders without exposing tenant credentials.

Source: https://fast.io/resources/chatgpt-microsoft-365-connector-permission-error/
Author: [Derek Labian](https://fast.io/authors/derek-labian/)
Last reviewed: 2026-11-08

## Why the ChatGPT Microsoft 365 Connector Triggers Permission Errors and Admin Consent

Connecting an AI assistant to Microsoft 365 fails not because user credentials are invalid, but because enterprise tenants treat multi-tenant AI integrations as potential data exfiltration vectors. When an employee attempts to link their corporate OneDrive or SharePoint account inside ChatGPT, the browser redirects through Microsoft identity platform endpoints and halts at a screen announcing that administrator approval is needed.

A ChatGPT Microsoft 365 connector permission error is an access rejection triggered when a user or AI connector attempts to read Microsoft 365 tenant resources without tenant admin consent or required Entra ID scopes.

To understand why this error occurs, it is essential to review the authorization mechanics of Microsoft Entra ID. Third-party applications interact with Microsoft 365 services by registering an identity in the directory and requesting OAuth 2.0 permission scopes through the Microsoft Graph API. Microsoft categorizes these permissions into two foundational models:

* **User Consent**: Individual users authorize an application to access data belonging strictly to their personal account context, such as reading personal calendar entries or viewing basic profile attributes.
* **Administrator Consent**: An authorized directory administrator grants consent on behalf of the entire organization, or authorizes high-privilege scopes permitting an application to inspect shared repositories, cross-departmental files, or directory trees.

Because corporate document libraries house confidential contracts, financial records, customer data, and source code, enterprise Microsoft 365 tenants restrict regular employees from granting third-party multi-tenant applications access to corporate repositories. When ChatGPT initiates its authorization handshake, the Microsoft identity platform evaluates the requested scopes against tenant consent policies. Detecting requests for high-impact organization-wide scopes, Entra ID blocks the authorization process and displays the permission denial prompt.

### Microsoft Graph Permission Scopes Requested by the ChatGPT Connector

To inspect, index, and retrieve files stored across Microsoft 365, the native ChatGPT connector requests a bundle of delegated Microsoft Graph permission scopes:

* `Files.Read.All`: Grants the connector permission to read binary contents and metadata of files across all OneDrive drives and SharePoint document libraries accessible to the user.
* `Sites.Read.All`: Permits the application to discover SharePoint site collections, read site lists, and traverse document library hierarchies across the tenant.
* `Mail.Read`: Allows the connector to read messages in user mailboxes if Microsoft 365 email summarization features are active.
* `User.Read`: Enables the application to sign in the employee and read basic profile details.
* `offline_access`: Grants the application an OAuth refresh token, allowing background synchronization without forcing the employee to sign in repeatedly.

Because `Files.Read.All` and `Sites.Read.All` provide programmatic access to corporate repositories, Microsoft Entra ID flags them as high-impact permissions. In standard enterprise configurations, users cannot consent to these scopes on their own, making administrator intervention mandatory.

### The Enterprise Security Dilemma: Tenant-Wide Consent vs Over-Sharing Risk

When employees encounter the admin consent wall, their standard reaction is to file an IT ticket requesting approval for the OpenAI application. Most online guides advise administrators to grant tenant-wide consent immediately. However, enterprise security teams routinely deny these requests.

This hesitation is rooted in permission sprawl. In mature Microsoft 365 environments, SharePoint sites, project folders, and OneDrive libraries accumulate loose permissions over years of collaboration. Team sites and legacy archives often inherit broad read access granted to default internal security groups. In normal daily operations, employees rarely stumble upon sensitive files outside their immediate focus areas.

When an AI retrieval engine indexes corporate storage, that functional obscurity vanishes. If an authorized user enters a conversational prompt into ChatGPT, the retrieval system scans every file the user has permission to read. If executive compensation reviews or restructuring plans were saved into a broadly shared SharePoint site, ChatGPT can ingest that content and surface it in chat responses. Because the extracted text leaves the Microsoft 365 security boundary to be processed by an external AI provider, security architects often conclude that granting broad tenant-wide admin consent introduces unacceptable corporate exposure.

## How to Approve the ChatGPT Connector in the Microsoft Entra Admin Center

For organizations where IT governance approves the direct connection between ChatGPT and Microsoft 365, an administrator can resolve the permission error by granting tenant-wide consent in the Microsoft Entra admin center.

To perform this operation, the administrator must hold an account assigned sufficient administrative privileges. Microsoft Entra ID requires the Global Administrator role, or an application governance role such as Cloud Application Administrator or Application Administrator.

Follow these steps to grant administrative consent:

1. Sign in to the Microsoft Entra admin center at `entra.microsoft.com` using administrative credentials.
2. In the left navigation menu, select **Identity**, expand **Applications**, and click **Enterprise applications**.
3. Under **Manage**, click **All applications**.
4. In the search box, enter the application name (such as `ChatGPT` or `OpenAI`) or the Application ID associated with the connector request.
5. Select the application from the search results to open its Overview panel.
6. In the left menu under **Security**, click **Permissions**.
7. Review the requested delegated Microsoft Graph permissions, including `Files.Read.All` and `Sites.Read.All`.
8. Select the button labeled **Grant admin consent for your organization**.
9. In the consent dialogue, sign in with your administrator credentials, inspect the prompt, and select **Accept**.

Once completed, the status of each requested permission updates to indicate that consent has been granted for the organization. Employees can then retry linking their accounts inside ChatGPT without hitting the admin block.

### Configuring the Entra ID Admin Consent Request Workflow

When standard users try to connect an unapproved application in a locked-down tenant, they often see a dead-end message stating that approval is needed, with no way to submit an official request. Administrators can formalize governance by enabling the Microsoft Entra ID admin consent request workflow.

When this workflow is active, the blocking prompt changes. Instead of a dead end, users see a form where they can enter a business justification and click **Request approval**.

Turning on the admin consent workflow in Microsoft Entra ID requires signing in with the Global Administrator role. To configure this capability:

1. In the Microsoft Entra admin center, navigate to **Identity** > **Applications** > **Enterprise applications**.
2. Under **Security**, select **Consent and permissions**, then click **Admin consent settings**.
3. Under **Admin consent requests**, toggle **Users can request admin consent to apps they are unable to consent to** to **Yes**.
4. Under **Who can review admin consent requests**, select the designated administrators or security groups responsible for evaluating AI integrations.
5. Configure email notifications to alert reviewers when a new request is submitted, and select **Save**.

Designated reviewers can then inspect incoming requests directly under **Enterprise applications** > **Admin consent requests**, reviewing user justifications before deciding whether to approve the integration.

### Limiting User Assignment to Prevent Uncontrolled Rollouts

Granting tenant-wide admin consent registers the enterprise application across the entire directory. By default, every user in the organization gains the technical ability to sign in to the application and connect their Microsoft 365 files. To prevent unauthorized employees from connecting company data, administrators should enforce user assignment controls:

1. In the Microsoft Entra admin center, go to **Enterprise applications** > **All applications** and select the ChatGPT application.
2. In the left menu under **Manage**, select **Properties**.
3. Set **Assignment required?** to **Yes** and select **Save**.
4. In the left navigation menu under **Manage**, select **Users and groups**.
5. Click **Add user/group**, select the specific security group containing authorized pilot users, and assign them to the application.

With this configuration, any user outside the assigned security group who attempts to connect Microsoft 365 inside ChatGPT is rejected with error code `AADSTS50105`. This ensures that generative AI file connectivity remains strictly confined to approved teams.

## Diagnosing Common Microsoft Entra and Microsoft 365 Connector Errors

Even after directory administrators grant consent, users frequently encounter secondary permission errors, expired tokens, or empty query results. Diagnosing the root cause requires matching the behavior to specific Microsoft Entra error codes and SharePoint access rules:

* **`AADSTS65001`: Consent Missing or Revoked**: The user or administrator has not consented to use the application with ID. This occurs when an employee authenticates before an administrator grants tenant-wide consent, or after an admin clears existing OAuth grants. Remediation requires an administrator to open **Enterprise applications** in Microsoft Entra ID, locate the app, and select **Grant admin consent**.
* **`AADSTS90094`: Administrator Consent Required**: Directory policies prohibit standard user consent, and an unapproved application requests permissions requiring administrative authorization. If the admin consent workflow is enabled, the user can submit a justification request; otherwise, IT must grant consent manually.
* **`AADSTS50105`: User Not Assigned to Application Role**: The administrator enabled **Assignment required?** on the enterprise application, but the connecting user has not been added under **Users and groups**. Adding the employee or their department group resolves the block immediately.
* **`AADSTS50076` or `AADSTS50079`: Conditional Access MFA Requirement**: Microsoft Entra ID issues these codes when the user must complete Multi-Factor Authentication or re-verify device compliance per Conditional Access policies. Strict device compliance policies can prevent token issuance during web-view authentication.
* **SharePoint `HTTP 401 / 403` Access Denied**: If Microsoft Entra authentication succeeds but ChatGPT cannot find or read files, the issue stems from SharePoint site collection permissions. Delegated tokens cannot read documents that the individual user lacks rights to view in SharePoint. For detailed troubleshooting of SharePoint site collection permission issues, see [Fix ChatGPT SharePoint Not Working](https://fast.io/resources/chatgpt-sharepoint-not-working/).

### Conditional Access Policies and Multi-Factor Authentication Conflicts

Conditional Access policies in Microsoft Entra ID evaluate signals such as user risk, device health, and geographic location before granting access tokens. When an employee connects a third-party AI service, Conditional Access policies can block token issuance even if tenant-wide admin consent has been granted.

Common policy conflicts include:

* **Compliant Device Rules**: Enterprises often require that applications accessing Microsoft 365 data run on managed, hybrid-joined devices. Because ChatGPT executes in external cloud infrastructure, background token refreshes can fail compliance checks.
* **Continuous Access Evaluation**: If network locations change or passwords reset, active tokens can be revoked, severing the connector session.
* **Session Lifetime Policies**: Short sign-in frequency policies force frequent interactive logins, causing connection drops if user consent is blocked.

Administrators can diagnose these failures by inspecting the employee entry in **Identity** > **Users** > **Sign-in logs** in the Microsoft Entra admin center, examining the **Conditional Access** tab for policy blocks.

### Purview Sensitivity Labels and Encrypted File Extraction

Another frequent cause of permission errors in Microsoft 365 involves Microsoft Purview Information Protection sensitivity labels. Many enterprises apply automated sensitivity labels that enforce Rights Management Services encryption on financial spreadsheets, legal memos, and design documents.

When ChatGPT queries a SharePoint or OneDrive library containing encrypted files:

1. The connector locates the file metadata via Microsoft Graph `Files.Read.All`.
2. When the connector attempts to download the file payload to extract text, the protection layer blocks decryption because the third-party application lacks decryption keys.
3. ChatGPT returns an empty summary or displays an error stating that the file could not be read or parsed.

To resolve this issue, administrators must ensure that documents intended for AI indexing carry sensitivity labels that do not enforce encryption, or store files in designated collaboration libraries where programmatic extraction is permitted.

## The Scoped Workspace Solution: Connecting ChatGPT via Fastio

When enterprise security policies prohibit granting broad tenant-wide admin consent to external AI platforms, teams need an alternative architecture. Rather than giving an AI connector broad Microsoft Graph permissions across an entire Microsoft 365 directory, organizations deploy a scoped workspace gateway using Fastio.

In this architecture, your team keeps its existing corporate file storage in OneDrive, SharePoint, Google Drive, Box, or Dropbox. Instead of exposing your entire directory to ChatGPT, you synchronize only the specific folders required for a project into an isolated [shared workspace](/product/workspaces/). Fastio Cloud Sync connects Google Drive, Dropbox, Box and OneDrive folders to a workspace, one-way or two-way, on a schedule or on demand (never continuous, live or real-time; SharePoint libraries connect through the OneDrive connector).

Fastio Cloud Sync scopes file access to designated workspace folders, eliminating the need for broad tenant-wide Microsoft 365 admin consent. The external AI model never interacts directly with your Microsoft Entra directory or Microsoft Graph APIs, completely eliminating the risk of directory-wide permission sprawl.

Inside the workspace, Fastio Intelligence Mode automatically indexes files on arrival for hybrid search (combining full-text, semantic, and metadata-value retrieval). When ChatGPT needs information, it queries the pre-indexed workspace documents and receives exact answers backed by document citations. Review how this fits into your broader infrastructure with [agent storage capabilities](/storage-for-agents/).

In published performance evaluations across remote storage providers, connector performance varies significantly. The [connector comparison report](https://fast.io/benchmarks/) details these evaluations, and that page is the only place its numbers live. Fastio was measured the fastest and the lowest cost of the providers tested, providing an efficient bridge between enterprise files and conversational AI models.

Fastio organizations operate on predictable subscription tiers. Monthly plans start with a 14-day free trial that requires a credit card. Review options on the [Fastio pricing](/pricing/) page:

| Plan | Monthly Billing | Included Storage | Included Workspaces | Monthly AI Credits |
|---|---|---|---|---|
| Starter | $9.99/mo | 250 GB | 5 workspaces | 100,000 credits |
| Business | $49.99/mo | 5 TB | 50 workspaces | 600,000 credits |
| Enterprise | $199.99/mo | 25 TB | 200 workspaces | 3,000,000 credits |

Storage beyond the plan is billed in cents per gigabyte, and extra bandwidth is billed per gigabyte without consuming AI credits. Credits meter AI retrieval work, with overage billed in predictable credit increments.

### How Scoped Cloud Sync Enforces Least Privilege

The fundamental security flaw of the native ChatGPT Microsoft 365 connector is its reliance on high-impact delegated scopes like `Files.Read.All`. Even with user assignment restrictions, the application technically holds authorization to traverse any site collection the user can view.

Fastio eliminates this broad exposure by establishing an isolated storage boundary:

* **Strict Directory Isolation**: Fastio authenticates to your Microsoft 365 account using a scoped OAuth session, reading only the specific folder or SharePoint document library you designate. The rest of the tenant remains invisible.
* **Workspace Role-Based Permissions**: Permissions in Fastio are set per organization, workspace, and share through member roles. Because there are no complex inherited Access Control Lists or hidden folder permissions, administrators have certainty regarding what an AI assistant can access.
* **Scheduled Synchronization**: Cloud Sync transfers updates between Microsoft 365 and your Fastio workspace on a schedule or on demand, preventing background AI queries from consuming Microsoft Graph API throttling quotas.

### Connecting ChatGPT via the Fastio Plugin or Streamable HTTP MCP

Once your Microsoft 365 files are synchronized into a Fastio workspace, connecting ChatGPT takes only minutes. Fastio exposes a consolidated Model Context Protocol toolset, allowing ChatGPT to search and inspect documents securely. Full configuration instructions are available in the [Fastio MCP setup guide](https://mcp.fast.io/docs).

Fastio Streamable HTTP MCP at `https://mcp.fast.io/mcp/operations` connects ChatGPT to pre-indexed workspace documents without exposing full Microsoft 365 directory permissions.

Teams can connect ChatGPT using two distinct methods:

**Method 1: Fastio Plugin (Preferred)**
1. Open ChatGPT and navigate to the plugin directory at `chatgpt.com/plugins`.
2. Search for **Fastio** and select **Install plugin**.
3. Sign in to Fastio when prompted in the browser window to authorize access to your organization.
4. In your ChatGPT conversation, mention `@Fastio` to query your synchronized Microsoft 365 documents directly.

**Method 2: Custom MCP Server (Alternative)**
For environments that require a custom connection or use Codex:
1. In ChatGPT Settings, open **Security and login** and turn on **Developer mode** (availability can depend on your workspace's policy).
2. Go to `chatgpt.com/plugins` and select the plus button to add a new connection.
3. Name the connector `Fastio`.
4. Enter `https://mcp.fast.io/mcp/operations` as the MCP server URL.
5. Create the connection and complete the browser sign-in when prompted.

Both methods use Streamable HTTP transport and modern OAuth authorization. During sign-in, you select exactly which organizations and workspaces ChatGPT is permitted to query, keeping your remaining corporate repositories fully protected.

## Comparing Direct Tenant Integration and Scoped Workspace Gateways

Deciding between resolving Microsoft Entra ID admin consent for the native connector and deploying a scoped workspace gateway depends on organizational security governance, compliance policies, and architectural requirements.

The native connector provides direct links to live Microsoft 365 files, but it demands tenant-wide administrative approval, exposes the organization to internal over-sharing risks, and locks teams into Microsoft-only storage. In contrast, a scoped workspace gateway decouples AI access from core identity directories, enforces least-privilege folder boundaries, and unifies files across multiple cloud storage platforms.

The following comparison details how these two integration models differ across key technical dimensions:

| Dimension | Native ChatGPT M365 Connector | Fastio Scoped Workspace Gateway |
|---|---|---|
| **Identity Approval** | Requires tenant-wide admin consent in Microsoft Entra ID | Requires user-level OAuth to sync selected folders |
| **Permission Scope** | Requests broad `Files.Read.All` across the tenant | Strictly limited to files inside the designated workspace |
| **Data Exposure Risk** | High; surfaces any over-shared document user can read | Zero directory traversal; AI reads only synchronized files |
| **Multi-Cloud Support** | Microsoft 365 (OneDrive, SharePoint) only | Unifies OneDrive, SharePoint, Google Drive, Box, and Dropbox |
| **Search Architecture** | Remote traversal via Microsoft Graph API | Pre-indexed hybrid search (full-text, semantic, metadata) |
| **Audit Visibility** | Entra sign-in logs and Microsoft 365 audit logs | Detailed Fastio activity log tracking all workspace changes |
| **Setup Friction** | Requires Global Admin approval and security review | Can be deployed immediately by project teams |

### Governance Boundaries and Multi-Cloud Repositories

In modern enterprise environments, knowledge rarely lives in a single repository. Marketing teams often store collateral in Google Drive, product teams maintain design specs in Box, and corporate contracts reside in SharePoint.

The native ChatGPT Microsoft 365 connector only bridges Microsoft repositories. If an employee needs ChatGPT to cross-reference a contract in SharePoint with a proposal in Google Drive, the native connector cannot complete the query.

Deploying a scoped workspace gateway resolves this multi-cloud fragmentation. Fastio Cloud Sync connects Google Drive, Dropbox, Box and OneDrive folders into a single unified workspace. Because Intelligence Mode indexes documents across all connected sources, ChatGPT can execute cross-platform queries through a single MCP connection, without requiring administrative changes to multiple cloud identity providers.

### Enterprise Checklist for AI File Access

Before approving third-party AI connections to corporate storage, IT and security teams should evaluate this operational checklist:

* **Identify Data Sensitivity**: Verify whether target document libraries contain regulated personal data, financial records, or credentials that must not be ingested by external AI models.
* **Audit Internal Over-Sharing**: Run an access audit on SharePoint site collections to ensure sensitive directories do not inherit open domain read permissions.
* **Determine Consent Feasibility**: Check whether your organization allows tenant-wide admin consent for multi-tenant applications, or if policy mandates isolated third-party gateways.
* **Establish Role-Based Containment**: If using native connectors, enforce strict user assignment policies in Microsoft Entra ID. If using a scoped workspace, restrict membership to project personnel.
* **Verify Audit Mechanisms**: Ensure that all file changes, uploads, and membership updates are captured in a detailed activity log for ongoing security oversight.

## Revoking Access, Disconnecting Sessions, and Managing Token Lifecycles

Managing enterprise security requires established procedures for revoking credentials when project pilots conclude, third-party evaluations end, or employees transfer roles. Administrators and users should know how to sever connections promptly across Microsoft Entra ID, ChatGPT, and Fastio.

When using the native ChatGPT connector, revoking access requires actions in both Microsoft Entra ID and ChatGPT:

1. **Revoke in Microsoft Entra ID**: Sign in to the Microsoft Entra admin center as an administrator. Navigate to **Identity** > **Applications** > **Enterprise applications**. Select the ChatGPT service principal. In the left menu under **Manage**, select **Properties** and click **Delete** to remove the enterprise application entirely. Alternatively, navigate to **Security** > **Permissions** and review active OAuth grants to revoke individual permissions.
2. **Disconnect inside ChatGPT**: In ChatGPT, open **Settings**, select **Connected apps**, find the Microsoft 365 or SharePoint connector, and click **Disconnect**.

When using Fastio as a scoped workspace gateway, revoking AI connectivity is instantaneous and does not impact your corporate Microsoft 365 tenant:

1. In the Fastio web console, click **Settings**.
2. Select **Devices & Agents**, then navigate to **Connected Devices**.
3. Locate the active session for ChatGPT or Codex and click **Revoke**.

Once revoked, the session token is invalidated immediately. ChatGPT can no longer read or query documents within the workspace.

Furthermore, administrators can inspect the detailed activity log in Fastio to review organization changes. The detailed activity log maintains a clear record of what changed in an organization and who changed it, people and agents alike: tracking uploads, edits, moves, deletions, membership updates, permission modifications, and share creation. This ensures ongoing visibility into workspace modifications without exposing your broader corporate identity infrastructure.

## Frequently asked questions

### Why does ChatGPT say Need admin approval for Microsoft 365?

ChatGPT displays the Need admin approval prompt because its native connector requests broad Microsoft Graph API permissions like Files.Read.All and Sites.Read.All. Microsoft Entra ID classifies these as high-impact organizational scopes. In most enterprise tenants, default security policies prevent regular employees from consenting to multi-tenant applications requesting organizational data, requiring a directory administrator to evaluate and grant consent.

### How do I fix permission errors on the ChatGPT Microsoft 365 connector?

To fix permission errors as an IT administrator, sign in to the Microsoft Entra admin center, navigate to Enterprise applications, find the ChatGPT application, and select Grant admin consent under Permissions. To prevent all employees from accessing the connector, set Assignment required to Yes and assign only authorized pilot groups. Alternatively, deploy a scoped workspace gateway with Fastio to sync only designated folders without tenant-wide consent.

### How can enterprise teams safely connect ChatGPT to Microsoft 365 files?

Enterprise teams can safely connect ChatGPT to corporate documents by deploying a scoped workspace gateway with Fastio. Instead of granting OpenAI broad delegated access across the entire Microsoft 365 tenant, Fastio Cloud Sync synchronizes only specific project folders from OneDrive or SharePoint into an isolated workspace. ChatGPT connects to the workspace via the Fastio plugin or Streamable HTTP MCP server, enforcing strict least-privilege boundaries.

### Can an employee bypass the Microsoft 365 admin consent requirement?

No. Employees cannot bypass Microsoft Entra ID consent boundaries when using the native connector because token issuance is enforced cryptographically at the identity platform layer. If the tenant blocks user consent, only a directory administrator holding roles like Global Administrator or Application Administrator can authorize the application. Attempting to bypass these controls violates identity governance policies.

### What Microsoft Graph permissions does the ChatGPT connector request?

The native connector primarily requests delegated Microsoft Graph scopes including Files.Read.All to read document contents and metadata across accessible drives, Sites.Read.All to traverse SharePoint site collections, User.Read to verify employee identity, and offline_access to maintain background session persistence using OAuth refresh tokens. Additional scopes like Mail.Read may be requested if email features are enabled.

### How does Fastio isolate Microsoft 365 files without tenant-wide consent?

Fastio decouples the AI model from your corporate directory. A user authorizes Cloud Sync to access only a specific OneDrive folder or SharePoint library. Those files are copied into an isolated Fastio workspace where role-based permissions are set per organization, workspace, and share. ChatGPT connects via MCP exclusively to the workspace, ensuring it cannot discover or query any files outside that designated space.

### What Fastio subscription plan is required for team workspace connections?

Fastio organizations operate on paid subscriptions. Monthly plans start with a 14-day free trial that requires a credit card. Teams can choose between Starter, Business, and Enterprise tiers depending on workspace, storage, and AI credit requirements, as detailed on the pricing page.

## Sources

- [Microsoft Learn: Configure the admin consent workflow](https://learn.microsoft.com/en-us/entra/identity/enterprise-apps/configure-admin-consent-workflow): Turning on the admin consent workflow in Microsoft Entra ID requires signing in with the Global Administrator role.

## About Fast.io

Fast.io provides shared workspaces where people and AI agents work on the same files, with built-in semantic search and citation-backed chat over what they hold. Agents reach it through a remote MCP server, a REST API at https://api.fast.io/current/, and a command line client published on npm as @vividengine/fastio-cli. MCP setup is at https://mcp.fast.io/docs: Claude and most MCP clients connect to https://mcp.fast.io/mcp/tools, ChatGPT to https://mcp.fast.io/mcp/operations, and coding agents to https://mcp.fast.io/mcp/code.
