// Documentation

Connect your AI tools to ArtifactBridge

// Start here

MCP server URL

https://app.artifactbridge.com/mcp

Server name: com.artifactbridge/artifactbridge. Official MCP Registry entry ↗

Browser assistants

Runs in a tab. Nothing to install.

Local tools

Runs on your computer. Set up from the terminal.

The desktop app is optional. It sets up your local tools and stays in your menubar. Install the desktop app ↗

Browser assistants

These run in a browser tab and reach ArtifactBridge from the vendor's cloud, so there is nothing to install. Most ask for the MCP server URL, then sign you in; ChatGPT uses its official app instead. Several need an administrator to add the connector, noted in each section. Your workspace's app permissions still apply.

Assistants assume production unless you or an explicit target specify otherwise. They verify workspace access, but do not ask you to confirm production after a successful connection. Existing approval requirements still apply. Self-hosted or on another deployment? Copy that deployment's endpoint from Settings → Connect AI tools instead.

Claude on claude.ai and Claude Desktop both use these Customize → Connectors steps. Claude Code is the local CLI under Claude Code.

  1. 01

    Open Customize → Connectors

  2. 02

    Select + then Add custom connector

  3. 03

    Paste the URL below, select Add, then sign in when Claude asks

    MCP server URL

    https://app.artifactbridge.com/mcp

    Paste it where Claude asks for a custom MCP server.

  4. 04

    Set tool permissions (optional)

    If Tool permissions is available for the ArtifactBridge connector, open the connector, then Tool permissions. Tools are grouped, for example read-only versus write or delete. Set read-only tools to Always allow so Claude can look up documents without asking each time. Keep write, delete, and other consequential tools on Needs approval. Blocked stops Claude from using that tool.

    On Team and Enterprise, an owner can set these levels for everyone, and members cannot override them. Anthropic documents these labels in Use connectors to extend Claude's capabilities ↗.

Any plan. A free account holds one custom connector. On Team and Enterprise an owner adds it first in Organization settings → Connectors.

↑ All tools
  1. 01

    Open the official ArtifactBridge app using the link below

  2. 02

    Connect ArtifactBridge and sign in when ChatGPT asks

    When prompted, choose the target workspace.

  3. 03

    Select Try in chat to start using ArtifactBridge

    Taking the product tour? Clear any prefilled example and paste the same tour prompt into that chat. If you stay in the original chat, say Continue.

The official ArtifactBridge app connects to production and cannot be repointed. This guide does not document an alternate-deployment ChatGPT route. For a preview or self-hosted deployment, use a documented host that accepts your endpoint instead. Your workspace's app permissions still apply.

To put an image in ArtifactBridge, attach it in ChatGPT on the web or desktop and ask ChatGPT to put it in a room or in the Library. ChatGPT mobile cannot pass an attached image to ArtifactBridge. On mobile, upload the image in ArtifactBridge instead.

Open the ArtifactBridge app in ChatGPT ↗

↑ All tools
  1. 01

    Open business.gemini.google → Settings & help → Manage team → Connected apps

  2. 02

    Select Add MCP Server and paste the URL below

  3. 03

    Enable the connection; it starts disabled

MCP server URL

https://app.artifactbridge.com/mcp

Paste it where Gemini asks for a custom MCP server.

Gemini Enterprise only, and only an administrator. The consumer Gemini app has no field for a custom MCP server.

↑ All tools
  1. 01

    Open grok.com/connectors

  2. 02

    Select New Connector, then Custom

  3. 03

    Paste the URL below, then sign in when Grok asks

MCP server URL

https://app.artifactbridge.com/mcp

Paste it where Grok asks for a custom MCP server.

xAI documents custom MCP connectors for Business and Enterprise. A team admin provisions the connector before members use it.

↑ All tools
  1. 01

    Open Settings → Connectors and select + Custom connector

  2. 02

    Choose Remote, then name it and paste the URL below

  3. 03

    Set Authentication to OAuth 2.0 and Transport to Streamable HTTP, acknowledge the warning, then Add and sign in

MCP server URL

https://app.artifactbridge.com/mcp

Paste it where Perplexity asks for a custom MCP server.

Pro, Max, and Enterprise. In an organization an admin decides whether members may add their own.

↑ All tools
  1. 01

    Open Connectors and select Add connector

  2. 02

    Switch to the custom MCP connector tab

  3. 03

    Name it, paste the URL below, then select Connect

MCP server URL

https://app.artifactbridge.com/mcp

Paste it where Le Chat asks for a custom MCP server.

An administrator adds the connector. On a personal plan the account owner is the administrator.

↑ All tools
  1. 01

    In the Microsoft 365 admin center, an administrator opens Copilot → Connectors and creates a custom connector

  2. 02

    Under Connect to MCP server, they enter the Base URL below and the authentication they set up

  3. 03

    After rollout, Copilot calls the server's tools from chat

MCP server URL

https://app.artifactbridge.com/mcp

Paste it where the connector asks for a custom MCP server.

Microsoft 365 Copilot. Copilot chat has no dialog for a pasted MCP server URL, so this is an administrator task.

↑ All tools

Local tools

These run on your computer or a remote machine. Claude Code, Codex, and Grok Build connect through the local ArtifactBridge connector that the desktop app adds on the computer where the tool runs, and ArtifactBridge then works only with the tool accounts you allow. The other tools add the server from their own command line, config file, or install link, then sign in; each of their commands and links below carries the endpoint. Copy commands one at a time; some tools start sign-in as soon as you add the server.

The desktop app finds the supported tools on this computer (Claude Code, Codex, Grok, OpenCode, and Hermes), sets each one up after you review the plan, and stays in your menubar. If you have it, open Settings → General → AI tools and turn on each of Claude Code, Codex, and Grok Build that you use, then skip to Did it work?

Claude in a browser tab or Claude Desktop uses the Claude connector steps. This section is the local CLI on your computer.

  1. 01 / CONNECT

    Turn on Claude Code in the desktop app

    Install the desktop app and sign in. Open Settings → General → AI tools and turn on Claude. The app adds the local ArtifactBridge connector to Claude Code for every project.

    Claude Code connects its servers when it starts. If Claude Code was already open, exit it, then run claude --continue to pick up the same conversation.

  2. 02 / ALLOW

    Allow your Claude account

    ArtifactBridge works only with the Claude Code accounts you allow. A Claude account with the same email as your verified ArtifactBridge email is allowed automatically. For another account, the agent tells you which Claude account is signed in to Claude Code and stops. To allow that account, run artifactbridge agent accounts allow --client claude in your own terminal. An agent cannot allow an account.

  3. 03 / CHECK

    Check it worked

    Start a new conversation and send the check prompt under Did it work?

  4. 04 / GATEWAY

    Using a gateway or a custom base URL? Turn on tool search

    This step applies only when Claude Code reaches the model through a gateway or proxy, that is, when ANTHROPIC_BASE_URL is set. On the Anthropic API, tool search is on by default, so you can skip this step.

    Without tool search, Claude Code sends every ArtifactBridge tool definition to the model with every request, and these definitions use a large share of the context. With tool search, the model receives a short list of tool names first and loads the full definition of a tool only when it needs it. This makes each request much smaller.

    Set ENABLE_TOOL_SEARCH=true (or auto) before you start Claude Code. Export it in your shell, or add it under the env key of ~/.claude/settings.json so that it applies to every session.

    ~/.claude/settings.json

    {
      "env": {
        "ENABLE_TOOL_SEARCH": "true"
      }
    }

    Merge the env key into your existing settings file, then start Claude Code.

↑ All tools
  1. 01 / CONNECT

    Turn on Codex in the desktop app

    Install the desktop app and sign in. Open Settings → General → AI tools and turn on ChatGPT, the row for Codex. The app adds the local ArtifactBridge connector to Codex on the computer where the app runs.

    Codex connects its servers when it starts. If Codex was already open, restart it.

  2. 02 / ALLOW

    Allow your ChatGPT account

    ArtifactBridge works only with the Codex accounts you allow. A ChatGPT account with the same email as your verified ArtifactBridge email is allowed automatically. For another account, the agent tells you which ChatGPT account is signed in to Codex and stops. To allow that account, run artifactbridge agent accounts allow --client codex in your own terminal. An agent cannot allow an account.

  3. 03 / CHECK

    Check it worked

    Start a new conversation and send the check prompt under Did it work?

  4. 04 / MODEL

    Using a custom or unlisted model? Expect the full catalog

    Codex decides how it loads MCP tools from the metadata of the model you configure. The models in Codex's own model list carry this metadata, and Codex then loads an ArtifactBridge tool definition only when the model needs that tool. A custom provider with a model slug that Codex does not know has no metadata. Codex then sends every ArtifactBridge tool definition to the model with every request. To avoid it, use a model that has Codex model metadata.

↑ All tools
  1. 01 / CONNECT

    Turn on Grok Build in the desktop app

    Install the desktop app and sign in. Open Settings → General → AI tools and turn on Grok. The app adds the local ArtifactBridge connector to Grok Build.

    Grok Build connects its servers when it starts. If Grok Build was already open, restart it.

  2. 02 / ALLOW

    Allow your Grok account

    ArtifactBridge works only with the Grok Build accounts you allow. A Grok account with the same email as your verified ArtifactBridge email is allowed automatically. For another account, the agent tells you which Grok account is signed in to Grok Build and stops. To allow that account, run artifactbridge agent accounts allow --client grok in your own terminal. An agent cannot allow an account.

  3. 03 / CHECK

    Check it worked

    Start a new conversation and send the check prompt under Did it work?

↑ All tools
  1. 01 / ADD

    Add the server to your config

    OpenCode reads remote servers from opencode.json. Add this entry under mcp (the URL is already in it).

    opencode.json

    "artifact-bridge": {
      "type": "remote",
      "url": "https://app.artifactbridge.com/mcp",
      "enabled": true
    }

    Replace the URL if your deployment is self-hosted.

  2. 02 / SIGN IN

    Sign in

    Run this to complete the browser OAuth flow.

    opencode mcp auth artifact-bridge

    Opens a browser window to sign in and choose a workspace.

  3. 03 / CHECK

    Check it worked

    Start a new conversation and send the check prompt under Did it work?

Or let the desktop app do this for you: install the desktop app.

↑ All tools
  1. 01 / ADD

    Add the server

    Run this on the machine and profile that runs Hermes.

    hermes mcp add artifact-bridge --url https://app.artifactbridge.com/mcp --auth oauth

    Replace the endpoint if your deployment is self-hosted. --auth oauth tells Hermes to sign in through your browser.

  2. 02 / SIGN IN

    Sign in

    Run this to complete the browser sign-in, then run /reload-mcp in an open conversation to load the tools.

    hermes mcp login artifact-bridge

    Sign in with your ArtifactBridge account and choose a workspace.

  3. 03 / CHECK

    Check it worked

    Start a new conversation and send the check prompt under Did it work?

Or let the desktop app do this for you: install the desktop app.

To let your whole workspace hand Room tasks to a Hermes agent, see Connect Hermes as a shared agent. That setup uses A2A and a plugin, not this sign-in.

↑ All tools
  1. 01 / ADD

    Add the server

    Run this once in the shell you use Gemini CLI from.

    gemini mcp add --transport http artifact-bridge https://app.artifactbridge.com/mcp

    Replace the endpoint if your deployment is self-hosted.

  2. 02 / SIGN IN

    Sign in

    In the Gemini CLI session, run /mcp auth artifact-bridge and sign in in the browser. Use /mcp to check the server's status.

  3. 03 / CHECK

    Check it worked

    Start a new conversation and send the check prompt under Did it work?

The desktop app does not set up Gemini CLI. Add it with the command above.

↑ All tools
  1. 01 / ADD

    Add the server with one link

    Select the link below. Your browser asks to open Cursor, and Cursor shows the server before it adds it. The link holds only the server URL and no token.

  2. 02 / SIGN IN

    Sign in

    On first connect, Cursor registers itself and opens the sign-in page in your browser. Sign in with your ArtifactBridge account and choose a workspace.

  3. 03 / CHECK

    Check it worked

    Start a new conversation and send the check prompt under Did it work?

If the link does not open Cursor, paste the config under Any other MCP client into Cursor's mcp.json file. The desktop app does not set up Cursor.

↑ All tools
  1. 01 / ADD

    Add the server with one link

    Select the link for your VS Code edition. Your browser asks to open VS Code, and VS Code shows the server before it installs it. The link holds only the server URL and no token.

  2. 02 / SIGN IN

    Sign in

    When VS Code starts the server, it opens the sign-in page in your browser. Sign in with your ArtifactBridge account and choose a workspace.

  3. 03 / CHECK

    Check it worked

    Open Copilot Chat in agent mode and send the check prompt under Did it work?

If the link does not open VS Code, run MCP: Add Server from the Command Palette, choose HTTP, and paste the MCP server URL. The desktop app does not set up VS Code.

↑ All tools

Any other MCP client

Using a tool that is not listed above? Most MCP clients read a mcpServers map. Paste this config; it names the same endpoint and carries no token, and the client signs you in on first connect. Change the name or URL if your deployment is self-hosted.

mcpServers config

{
  "mcpServers": {
    "artifact-bridge": {
      "type": "http",
      "url": "https://app.artifactbridge.com/mcp"
    }
  }
}

Paste it into the client's MCP config file.

Cursor reads this map from its mcp.json file. On first connect, Cursor registers itself and opens the sign-in page in your browser. For a one-link install, see Cursor.

↑ All tools

Server and cron agents

An unattended agent on a server or in a cron job connects as an agent of a person, not as that person. Its actions show as an agent in the workspace.

On that machine, run the CLI command login --agent (see the CLI reference). You sign in once in the browser. The tools that the CLI connects on that machine then use agent credentials. The command does not connect Claude Code, Codex or Grok Build, because their local connector uses your own sign-in. Use a client such as Hermes.

Another MCP client can add agent=1 to its authorization request. The sign-in page then shows Connect as an agent of <you>. Select it before you select Authorize. If you do not select it, the client connects as you.

An agent cannot:

  • approve or reject changes;
  • grant access;
  • publish private documents;
  • create more credentials.

The agent credential shows with an Agent label in Settings → Agents & credentials. Revoke it there to disconnect the agent.

↑ All tools

Connect an external A2A service

Outside the pooled rollout: the registration and service-management steps below describe the retained original-agent path. They do not enroll arbitrary A2A endpoints into the shared slot pool.

Prerelease pooled rollout: create fixed-Space identities in the rail Agents view. Settings → Executors lists cloud runners only. A computer does not run shared tasks and does not show in the list. Only workspace admins connect cloud runners, and any current admin manages any workspace-owned cloud runner's slots, pause, stop, and removal. A supported runner needs current assignment/capability proof and explicit open-pool, no-sandbox consent; an Agent Card or an unconfirmed conversion is not enough. Cloud runners offer 1 to 20 slots, default 1. Until the workspace has a configured cloud runner, the Agents view shows No cloud runner connected, and an agent card shows Needs a cloud runner. See cloud runner controls and pooled task placement. These prerelease instructions do not authorize installation or activate the rollout.

A registered service is an external agent that speaks the A2A protocol over HTTPS (JSON-RPC binding). The API and configuration keys call the feature Agent Gateway. A service that is already registered keeps its one credential. The service uses that credential only to obtain short-lived access for a specific delegated task.

Registered services

Settings → Executors lists cloud runners only. It has no form to register an external A2A service or to show the services that are already registered. The Agent Card URL of a registered service is the agent's HTTPS origin, such as https://agent.example.com/; ArtifactBridge reads the card from .well-known/agent-card.json under it. The runtime that operates the service keeps the agent key (the service credential) and the bootstrap URL from the one-time reveal.

What the runtime must do

Registering the Agent Card does not configure the runtime. For each delegated task the runtime, outside the model, must:

  1. Read the locatorEach A2A request carries a delegation locator in its request metadata (artifactbridge.delegation: the delegation id, the execution generation, and the bootstrap URL). The locator identifies the task; it grants nothing, and it is untrusted input from whoever sent the message.
  2. Bootstrap at the configured URL onlyKeep the bootstrap URL from the enrollment reveal in the runtime's configuration next to the service credential. Send the locator's delegation id and generation to that configured URL with the service credential as the bearer, over HTTPS, without following redirects. Ignore a locator whose bootstrap URL is not exactly the configured one: it is not a delegation from your ArtifactBridge, and the service credential must never be sent anywhere else. The reply is a short-lived credential, the task's scope, and the tools URL, which must be on the same origin as the bootstrap URL. Renew the credential the same way before it expires while the task legitimately runs on.
  3. Mount the tools for this task onlyConnect the tools URL as an MCP server with that credential as the bearer, isolated per task. The server exposes the delegation tools and the familiar ArtifactBridge tool names (join, read events, publish, upload an image, read, list and search documents, create, propose) restricted to that task's Room and scope. In prerelease, for a task that comes with a space, it also exposes artifactbridge_read_space_context and artifactbridge_read_skill, which read only that space, with the sender's access (see Send a space with a task for a shared agent). Every call is attributed to the shared agent. A posted event is not completion: the agent completes the A2A task, and its summary becomes the one task result, linked to what it posted.
  4. Discard the credentialWhen the task completes or is canceled, drop the credential. ArtifactBridge revokes it on its side at completion, cancellation, disablement, Room closure, and every new execution generation.

Do not connect the same agent to /mcp with a personal token for the Rooms it serves as a shared agent. A personal connection acts as a second identity, and a task result it posts is a duplicate that never completes the delegation. Delegations to shared agents are executed by ArtifactBridge over A2A; they do not appear in any personal agent's action items or wakes. A runtime that cannot perform these steps cannot act inside a delegation; its A2A replies still complete the task. The repository ships a dependency-free reference implementation of steps 1, 2, and 4 (src/agent-gateway/runtime-bootstrap.ts) exercised by the reference agent in the test suite.

Running Hermes Agent? Use the ArtifactBridge plugin for Hermes instead of building these steps yourself. See Connect Hermes as a shared agent.

Manage a service

For design delivery, the scoped artifactbridge_delegation_create_document tool and its artifactbridge_create_document alias accept format: "html" and the delegation's room_id. Pass the complete self-contained HTML in content_md, at most 10,000,000 UTF-8 bytes, with an idempotency_key for retries. Do not pass a folder for Room context. The server creates and attaches the artifact under the shared agent's identity; the final A2A task result links the attachment event. Creation requires document.create in the delegation scope. Library creation still requires an authorized destination folder. Check the runtime plugin's tool schema before using these fields; the server update does not update installed plugins.

  • A token stored before this protection existed is not sent anywhere until its owner enters it again in the agent's connection settings; until then the agent pauses. Entering it again waits while work of the agent may still need the old connection (see the next item).
  • ArtifactBridge re-reads each service's Agent Card on a schedule. Descriptive changes (name, description, skills) are applied automatically and appear in the change history. A changed endpoint or security requirement is never applied automatically: the agent shows Needs attention to its owner and workspace admins, and the cached card stays in use until the owner confirms the change. Other members see it as Ready, because work still runs. A service that stops answering shows Offline; no new work is sent to it until a later check passes, and queued work waits.
  • If the owner is suspended or leaves the workspace, the agent is paused and its open work is canceled. It cannot be resumed until the owner is back.
  • Pause turns away new requests and asks running requests to stop: they lose access to ArtifactBridge at once, and each affected Room gets a status line. A remote agent may still be finishing its work, and may take up to the five-minute cancellation deadline to confirm that it stopped. Waiting requests are held, not canceled. The owner or any workspace admin can pause an agent. The owner can resume it, which releases the held requests; for an agent shared with everyone in the workspace, a workspace admin can resume it too. A request that still needs the owner's approval then waits for it.
  • A published agent appears in a Room under its agent name once a member who may use it sends a Room message that @-mentions it, or once it has work there; the Room never shows its owner. Picking the agent in the @-mention list only puts it in the draft. Members who may use the agent delegate tasks by @-mentioning it in a Room message, or through their connected agent. Room members who cannot use it still see its name and its past contributions. See Delegate work to an external service.

Server setup

Executors and shared agents need two server settings: PUBLIC_BASE_URL, so the bootstrap and tools URLs given to services are absolute, and AGENT_GATEWAY_SECRET_KEY, a base64 32-byte key that encrypts stored service tokens. Without the key, registering a service that needs a token is refused with a clear message instead of storing the token in plain text. Two managed settings tune the coordinator: AGENT_GATEWAY_STATUS_CHECK_INTERVAL_SECONDS (default 60) sets how often running work is checked at the service, and AGENT_GATEWAY_CANCEL_DEADLINE_SECONDS (default 300) sets how long a cancel request waits for confirmation before it times out.

Matching a task to shared agents uses Cloudflare Workers AI (the @cf/cloudflare/clef model) through the Worker's AI binding. When an agent asks for services with a task summary, the summary and each published service's name, description, and skills are processed by Cloudflare Workers AI. ArtifactBridge adds no Room content, documents, or endpoint URLs. The agent writes the summary, so anything the agent puts in it is sent. Without Workers AI, agents get the list without a ranking or a recommendation. Each member and each workspace can match at most 30 tasks per minute; over that limit, agents get the list without a ranking. Two managed settings tune matching: AGENT_GATEWAY_MATCHING_THRESHOLD (default 0.5) sets the fit at or above which a service counts as suitable, and AGENT_GATEWAY_MATCHING_MAX_CANDIDATES (default 30) sets the most services one request can judge. A larger catalog is listed without a ranking.

↑ All tools

Did it work?

If you are taking the Product tour, return to the same conversation and say Continue. If setup opened a new conversation, paste the same starting prompt you used before setup. Your assistant assumes production unless you specified another target, verifies workspace access, then recovers your saved tour progress before working on your private Welcome. Use the general check below when you are not taking the tour.

  1. Start a new conversation in the toolA conversation that was open before you connected does not see the server.
  2. Send the check promptCopy it below.
  3. Read the replyIt names the workspace you chose at sign-in and lists the documents you can open, or reports that the workspace has none yet. Either reply names the workspace, so it confirms the whole path works, even in a brand-new, empty workspace with no documents.

Verify in a new conversation

Read the current ArtifactBridge workspace name and list the documents I can access.

Send it in a new conversation.

↑ All tools

Manage access

Open Settings → Members & access → Access to see every connected tool and revoke one. Revoke the affected access if a device is lost or a tool should no longer connect. Removing a Skill does not revoke a credential. A second tool does not gain broader permission because the first one can read an item; access follows the identity that signed in.

To see or revoke the Claude Code, Codex, and Grok Build accounts you allowed, open Settings → General → AI tools in the desktop app, or run artifactbridge agent accounts list and artifactbridge agent accounts revoke <id>. If one of these tools reports agent_connector_required, it still connects the old way. The desktop app moves it to the new connection once after an update. If the tool still reports it, open Settings → General → AI tools in the desktop app, choose Update or Repair on that tool, or turn it on, then restart the tool.

ArtifactBridge allows one of these accounts automatically when its email is the same as your verified ArtifactBridge email. You can revoke it in the same list, and ArtifactBridge then does not add it again automatically.

Running without a browser, for example in CI? Use a workspace API token from the same page instead of sign-in, and inject it from a secret store. Never paste a token into a chat.