ChatGPT connects to remote MCP servers as custom apps, added through Developer mode. It registers itself with StackOne and runs the OAuth flow, so the URL is the whole configuration.Add the app in a browser at chatgpt.com. Developer mode and the app creation screens are web only, so the ChatGPT desktop app cannot add one. What you create belongs to your ChatGPT workspace, and the desktop app picks it up from there once it exists.
Custom MCP apps require Developer mode and a paid ChatGPT plan (Plus, Pro, Business, Enterprise, Edu). Availability, plan requirements, and the menu labels change often, so see OpenAI’s Developer mode and MCP apps article for the current flow.
Personal accounts have no workspace admin, so there is nothing to be granted first. If you don’t see the toggle there, check Settings → Security and login.
Only admins and owners can use Developer mode, and each one turns it on for their own account. An admin cannot enable it on behalf of another member.
Go to Settings → Apps → Advanced Settings.
Turn on Developer mode.
You can also enable it for yourself while creating the app, from Workspace Settings → Apps → Create. To check who holds these roles, see Workspace Settings → Members.
An admin grants access first, then each authorized member turns it on.
An admin opens Workspace Settings → Permissions & Roles → Connected Data and grants Developer mode access, using RBAC to pick which members get it.
Each granted member goes to Settings → Apps → Advanced Settings.
Turn on Developer mode.
2
Create the app
Settings → Apps → Create. Admins can do the same from Workspace Settings → Apps → Create. Some workspaces label this section Plugins, with a + button in place of Create.Give it a name and description, set authentication to OAuth, and paste the URL:
https://mcp.stackone.com/mcp
ChatGPT discovers the endpoints and registers itself, so leave the client ID and secret empty. No mcp-remote wrapper needed.
3
Scan the tools and approve the consent screen
Click Scan Tools. ChatGPT opens StackOne in your browser.Sign in, pick the project and the linked accounts the connector should reach, then Authorize.
Walk through the consent screen
Sign in to StackOne. If you are already signed in to the dashboard you skip straight to the next step.
Select a project. Select the project you would like to associate the connection with.
Select accounts and actions. Existing linked accounts are shown. New accounts can be linked by clicking + Link Account. You can either select the whole account (all actions will be granted) or refine by toggling individual actions.
(Optional) Load tools when needed. On by default, and the toggle that puts the connection into Advanced Tool Search. Leave it on for large action sets. Turn it off to hand the agent every selected action up front.
Authorize. Completes the connection; you can return to your client.
Select a project
Select accounts
Toggle actions
If you see a sentence where the Load tools when needed toggle should be, an admin has already settled it for the whole project. See project settings.
Back in ChatGPT, the scan finishes and lists the tools it found. Click Create.
4
Publish it to your workspace
The app appears in your own Settings → Apps with a Dev label, which is enough to use it yourself. Sharing it with everyone else depends on your plan.
Plus and Pro
Business
Enterprise and Edu
Not applicable. A personal account has no workspace to publish to, so the app is yours as soon as it is created. Skip to the next step.
The app also lands in Workspace Settings → Apps → Drafts. An admin or owner opens Drafts and clicks Publish, reviewing the safety warnings for any write actions.Published apps show in the workspace’s approved connectors list, labeled custom. They cannot be edited afterwards, so changing the tools or metadata means creating and publishing the app again.
The app also lands in Workspace Settings → Apps → Drafts. An admin or owner opens Drafts and clicks Publish.In the dialog that follows, Configure Actions selects which actions the app may run, and Configure Access limits it to specific groups. Both stay editable after publishing, from the ellipsis menu next to the app under Workspace Settings → Apps.
5
Use it in a chat
Start a new chat, select the StackOne app, and try:
What StackOne tools are available?
The app works in the ChatGPT desktop app as well as the browser. It is not available on mobile.
OpenAI asks you to confirm that an OAuth provider issues refresh tokens. StackOne advertises offline_access in its discovery metadata and issues them, so ChatGPT renews access on its own. Nothing to configure.
Once an admin publishes the app, ChatGPT works from a frozen snapshot of its tools. Changing what StackOne exposes, by authorizing another linked account or enabling more actions on a connector profile, does not reach ChatGPT until the app is refreshed. Enterprise and Edu admins refresh from the ellipsis menu next to the app under Workspace Settings → Apps. Business plans cannot refresh a published app, so it has to be created and published again.Advanced Tool Search sidesteps most of this. It replaces the per-action tool list with two stable tools, Search and Execute, so the snapshot holds however the underlying grant changes.To change which accounts or actions ChatGPT can reach, re-run the OAuth flow. To revoke it, use Connected Apps in the StackOne dashboard.
Connecting with a session token instead
A session token URL carries its own credential, so it covers the cases OAuth can’t: a shared server, a scheduled job, or anywhere nobody is present to approve a consent screen.Generate one from Connectors, open a connector, then Use in Agent. Pick a linked account, set the expiry (one year by default), and copy the URL:
One URL covers one linked account, and anyone holding it has that access until it expires, so treat it like a password. See Choosing a connection method for the comparison with OAuth.There is no consent screen to set Advanced Tool Search on, so add the tool-mode query parameter instead: