Skybridge is designed to be runtime-agnostic. Your view code works the same whether it runs in MCP Apps compatible clients (like Claude, Goose, VSCode) via the MCP ext-apps specification, or in ChatGPT via the Apps SDK.Documentation Index
Fetch the complete documentation index at: https://docs-staging.skybridge.tech/llms.txt
Use this file to discover all available pages before exploring further.
The Problem
Different AI runtimes use different APIs to communicate with embedded views:- ChatGPT uses the Apps SDK with
window.openaiglobal - MCP Apps use JSON-RPC postMessage protocol (MCP ext-apps spec)
Skybridge’s Solution
Skybridge introduces an adaptor layer that normalizes these differences: These include useToolInfo, useCallTool, and other API hooks. Skybridge automatically detects which runtime is available and uses the appropriate adaptor.Benefits
Future-Proof
As new AI platforms adopt MCP, your views will work without code changes
No Vendor Lock-in
Build once, deploy to multiple AI clients: ChatGPT, Claude, Goose, VSCode, and more
Single Codebase
One set of hooks, one mental model, multiple platforms
Graceful Degradation
Platform-specific features degrade gracefully with clear warnings
Runtime Compatibility
Not all features are available on all platforms. See the API Reference for a full compatibility matrix. Runtime-specific features:- useFiles, useSetOpenInAppUrl are Apps SDK only
- useViewState and data-llm attribute in MCP Apps is polyfilled to persist state, and doesn’t persist state across view renders
- useRequestModal in MCP Apps is polyfilled to render in an iframe instead of a host modal
Related
- MCP Apps - The open MCP ext-apps specification and client support
- Apps SDK (ChatGPT) - ChatGPT-specific features and APIs
- API Reference - Full hook compatibility matrix