- Transport. The standard View to host JSON-RPC bridge, with methods prefixed
x-allternit/. - Confirmation. Methods that save data or start work show a prompt drawn by the host over the View. The View cannot draw, skip, or answer it.
- Unknown methods. Any
x-allternit/*method (or other method) the host does not implement is rejected with JSON-RPC error-32601.
Feature detection
Atui/initialize, the host advertises the extension under the x-allternit key, in both hostCapabilities (on the result) and hostContext:
x-allternit/capabilities (no parameters) and gets the same object back. If the key is absent, the host does not support the extension: do not call the methods.
The shim
allternit-ext.js is a small dependency-free script (about 2 KB) that defines window.allternit. Its source is mcp-sandbox-proxy/allternit-ext.js in the Allternit host repository. A public download location is Planned. Inline its contents in your View’s HTML. A relative <script src> will not resolve inside the View’s opaque origin, and the View’s CSP allows inline scripts.
The shim does nothing when it is not inside an iframe, and it leaves an existing window.allternit alone.
Every method returns a promise. On failure the promise rejects with an
Error whose code is the JSON-RPC error code.
Without the shim, send the request yourself with the bridge:
Methods
x-allternit/saveArtifact
Saves content to the user’s Artifacts Library.
Returns
artifactId and address, of the form a://artifact/<id>. The user sees a prompt of the form: “APP wants to save “TITLE” (MIME TYPE) to your Artifacts Library.”
x-allternit/openInAci
Opens content in the Allternit workspace, in a mini-app view.
One of the two is required.
openInAci is navigation only and does not ask for confirmation.
x-allternit/dispatchAgent
Creates a task for an agent to run.
Returns
{ taskId }. This method always asks the user first, and the prompt shows the full prompt text. It creates the task in the user’s default workspace.
x-allternit/handoffToComputer
Asks Allternit’s computer-use agent to take over a task.
Returns
{ accepted: true } after the user confirms. It opens Allternit’s browser view with the URL and instructions; the browser view does not act on them automatically yet.
x-allternit/requestCheckout
Reserved for selling in your MCP App, which is a preview. The host draws the payment sheet outside your View; your View never renders payment UI. When commerce is off the method returns { "error": "unavailable" }. Treat that as “not supported here.”
Confirmation behavior
- The prompt is rendered by the host, outside your View. It states which app is asking and what it will do.
- Only one prompt is open at a time. A request that arrives while a prompt is open is declined.
- A declined or dismissed prompt returns error
-32000with the message “The user declined this request”. The same code is returned when the backing Allternit API call fails. - If the View is removed while a prompt is open, the prompt is declined.