Masko in ChatGPT
The Masko plugin connects ChatGPT to your Masko workspace. It can create a mascot, animate a character you upload, build interactive canvas behavior, and help you integrate the finished assets into your website or app.
This integration is in developer preview. A public directory listing is not yet announced. Availability depends on deployment and your ChatGPT workspace settings.
Connect your account
When the plugin is available to your account, choose Connect in ChatGPT. Sign in on Masko, select your personal or team workspace, review the permissions, and approve the connection. Team authorization requires an owner or admin.
You do not need to create or paste an API key. Masko automatically issues OAuth tokens for this connection. ChatGPT does not receive your Masko password. Generation uses the selected workspace's Masko credits, separately from your ChatGPT subscription. Ask for the estimated cost before generation.
The connection stays tied to the workspace you selected. Switching workspaces on the Masko website does not switch ChatGPT's connection. Personal and team credit balances are separate; reconnect to choose a different workspace. Team admins can authorize generation, but only the team owner can manage that team's billing.
For a developer-mode connection to an enabled deployment, use OAuth with the MCP
URL https://masko.ai/api/mcp. Client identity is discovered through ChatGPT's
published metadata; no manually entered client secret is required. If the server
is not enabled yet, connection will fail instead of silently granting access.
Try a workflow
- “Create a friendly mascot for my reading app.”
- “Animate this uploaded mascot waving hello.”
- “Make my mascot idle, celebrate when a lesson finishes, then return to idle.”
- “Help me integrate this animation into my React website.”
For an upload, select a PNG, JPEG, WebP or GIF image up to 10 MB. The selected file is imported into your Masko workspace for the requested operation. Generation returns a job first. The plugin checks progress and retrieves the finished asset; a pending job does not mean you need to generate again.
Interactive canvases
The plugin can create and edit a canvas, validate its graph, estimate generation cost, and generate missing media within an approved credit ceiling. It can then create an immutable playable release. Creating a release does not publish a marketplace listing or activate a mascot on your computer.
App events must map to inputs supported by the target runtime. Read the canvas guide before designing custom behavior.
Platform-specific integration
The plugin guides you through a direct player implementation in HTML, React,
Swift/SwiftUI or Android. It does not require @masko/sdk.
Use a simple player for one looping animation. For changing clips, use two persistent players: keep the current frame visible while the next player loads, verify its decoded frame, then switch both surfaces in one update. On failure, keep the current picture. Interactive mascots also need a graph controller for conditions, transitions and return paths.
Read smooth mascot playback for the handoff, platform details and checks for flicker. Use actual supported transparent media; an ordinary MP4 should not be described as transparent. See hosting and formats.
Private preview and release URLs expire. For a production private integration, your authorized backend should obtain fresh delivery and pass only that payload to the client. Never embed authoring credentials in a browser or mobile app. Public CDN hosting is a separate sharing action; the plugin should explain what becomes public before publishing your assets.
New mascots created through the plugin start with public CDN hosting disabled. Existing mascots keep their current hosting settings. Standalone uploads belong to your account and can be reused when creating a mascot in a selected workspace.
Manage access
Open Connected apps to see your connections and disconnect one. This stops future requests and refreshes from that connection. It does not delete your mascots or cancel generation already accepted. Existing API keys and CLI sessions are managed separately.
Support
If a job fails or a connection cannot complete, contact paul@masko.ai with the job or request ID. Do not send your password, API key, authorization code, or connection token. For an interrupted generation, check your existing jobs before requesting another paid output.