Deployment
Managed sandbox
Section titled “Managed sandbox”Open self-serve — sign up at app.canvasx.ai. Use this for first calls, evaluation, and cookbook examples.
Best for:
- Trying the MCP connection from Claude Code, Cursor, OpenAI, or LangChain.
- Connecting test app accounts.
- Validating app actions before a production rollout.
You create a workspace, connect a few app accounts, and get an MCP URL and token to call from your agent. See Getting started for the full flow.
Your own cloud
Section titled “Your own cloud”Sketch runs as one Node.js process serving the API, web UI, agent runner, Slack/WhatsApp adapters, and the public MCP endpoint.
Default deployment:
- Node.js 24+
- pnpm
- SQLite by default (optional Postgres support in progress)
- A reverse proxy such as Caddy for HTTPS
.envfor runtime configuration- Web UI for onboarding, channels, LLM credentials, API tokens, and connectors
Use this when a customer wants tenant-owned infrastructure but can still reach external app APIs and model providers.
Air-gapped or restricted network
Section titled “Air-gapped or restricted network”The repo can run in a restricted network, but a true air-gapped deployment is not a turnkey claim from this code alone.
Required constraints:
- Use local connector credentials instead of Canvas-brokered connections (connecting through the Canvas integration provider calls the Canvas API).
- Provide an allowed model endpoint reachable from the deployment.
- Disable or do not grant
WebSearchandWebFetchwhen public internet access is not allowed. - Ensure app APIs, OAuth callbacks, Slack/WhatsApp channels, and model providers are reachable inside the network boundary — or replaced with internal equivalents.
- Host any MCP clients and servers inside the same boundary.