TL;DR: The OpenAI Apps SDK uses OAuth 2.1, OIDC, and MCP to let ChatGPT connect to apps with scoped tool access, built-in consent, token validation, and sandboxed components, according to Stytch. The real governance issue is not connectivity but whether teams can enforce durable authorization, user context, and server-side control across chat-driven workflows.
Editorial analysis by NHI Mgmt Group, based on content published by Stytch: “Guide to authentication for the OpenAI Apps SDK”.
Key questions
Q: How should teams secure ChatGPT apps that use MCP and OAuth?
A: Teams should treat the MCP server as the trust boundary, then enforce OAuth 2.1 and OIDC on every privileged tool call.
Q: Why do consent prompts not solve access control in chat-based integrations?
A: Consent prompts capture user intent at one moment, but they do not replace durable access policy.
Q: What breaks when tool metadata is treated as the security control?
A: What breaks is the assumption that declared securitySchemes are equivalent to enforcement.
Practitioner guidance
- Harden server-side scope checks Require the MCP server to validate OAuth scopes and token claims on every tool invocation, including refresh and reauthorization paths.
- Separate UI state from credentials Keep bearer tokens, refresh tokens, and user identifiers out of widget state and out of sandboxed components.
- Publish and test discovery metadata Expose the protected resource metadata and OIDC discovery documents that ChatGPT needs, then test the full linking flow in developer mode.
Bottom line: The Apps SDK shifts identity risk into backend authorisation, where token validation and scope enforcement have to survive across chats and tool calls.
Explore further
View Full Forum → | NHI Foundation Course → | Our Services → | Read the full analysis →
Durable authorisation is the real control plane: The Apps SDK does not eliminate identity governance, it relocates it into the backend policy layer. Chat-based consent is ephemeral, while scopes, token validation, and revocation are durable controls. That means practitioners should judge the architecture by whether the server can still say no after the conversation has moved on.
A few things that frame the scale:
- 24,008 unique secrets were exposed in MCP configuration files in 2025 alone, the protocol's first year of widespread adoption, according to the State of Secrets Sprawl 2026.
- Only 44% of developers are reported to follow security best practices for secrets management, exposing a significant developer behaviour gap, according to the State of Secrets in AppSec.
A question worth separating out:
Q: How should teams secure sandboxed UI components in MCP integrations?
A: Teams should treat sandboxed components as presentation surfaces only. Give them narrow CSP allowances, keep secrets server-side, and route privileged actions through bearer-token protected tool calls. If a component can reach arbitrary domains or store credentials, the sandbox boundary stops doing useful security work.
👉 Read our full editorial: OpenAI Apps SDK authentication exposes new MCP identity control gaps