Docs
Dashboard
IntegrationsBeta

Connect Boxline to ChatGPT, Claude and Claude Code

Connect Boxline to ChatGPT, Claude or Claude Code with a Boxline sign-in and no API key. What a connected app can and cannot do, how to disconnect it, and the Boxline plugin.

Connect Boxline to ChatGPT, Claude or Claude Code, and the assistant can use a cloud browser, a shell and files, fetch and search the web, take screenshots, pull data out of pages and crawl sites. You sign in to Boxline in your browser, pick a project and allow it. There is no API key to create or paste.

The assistant talks to Boxline’s hosted MCP server at https://mcp.boxline.dev/mcp. This page is for connecting an app you use. To use an API key instead, or to run the server yourself, read MCP.

Before you start

  • You need a Boxline account with a confirmed email address.
  • You need a project to connect it to. Projects where you only have the billing role are not offered.
  • The app can start sessions, and sessions are billed to that project while they run. See Use it safely.

Connect an app

ChatGPT, Claude and Cowork

Open the app’s settings and add Boxline as a connector. If Boxline is in the app’s directory (see the plugin), choose it. Otherwise add a custom connector, and give it this address:

MCP server address
https://mcp.boxline.dev/mcp

Then choose Connect. The menu names differ between the apps and change over time, so look for connectors in the app’s settings. Your plan with the app can limit custom connectors: check the app’s own help.

Claude Code

Shell
claude mcp add --transport http boxline https://mcp.boxline.dev/mcp

Claude Code opens your browser so you can sign in. If it does not, run /mcp in Claude Code and choose boxline.

Sign in and allow

The same four steps follow in every app:

  1. Your browser opens Boxline’s sign-in page. Sign in if you are not already.
  2. Read the app’s name and the address it will send you back to. Boxline shows a Verified mark for apps it knows. For any other app it shows a warning: continue only if you started connecting yourself, from the app.
  3. Pick the project the app may use. It can reach that one project only, and it acts with your role in it.
  4. Choose Allow. You go back to the app, and it is connected. Choose Deny, and nothing is connected.

The sign-in link works once, for 10 minutes. If the page says the request expired, go back to the app and connect again.

What a connected app can and cannot do

A connected app acts as you, in the project you picked, with your current role in it. A viewer’s app can read, but anything that changes something is refused, as it would be for the viewer in the console. If you lose your role in the project, the app stops working.

It can useIt cannot use
Browser and shell sessions: create, list, stop, resume and delete them, drive the browser, run commandsAPI keys
The files in a session’s workspaceBilling
Fetching pages and searching the webOrganizations and members
Screenshots, and extracting data from pagesSaved credentials: passwords and secrets
Crawling sitesWebhooks, model keys and account settings
  • The tools it gets. The same tools as the hosted server, without browser_login, credentials_list and the credential inputs (credential and field on browser_type, credentials on session_create). This is the directory tool set. See all tools.
  • Saved credentials. To let an assistant use a saved password or secret, connect with an API key instead. A connected app is refused them on purpose.
  • Sessions that hold credentials. Some sessions have saved credentials in their shell, because you started them with an API key and credentials. A connected app can’t run commands, read or write files, use computer-use actions, run plain-English steps (browser_act with a sentence) or open the terminal in those sessions. A browser profile still works with a connected app, but its linked password is not put in the shell.
  • If an app asks for more, the API answers 403 with oauth_route_forbidden, or with oauth_credentials_refused when the request names a saved credential.

How long a connection lasts

The app never sees your Boxline password, and it does not get an API key. It holds two tokens, and Boxline stores only hashes of them.

TokenLooks likeLasts
Access tokenbxo_…1 hour
Refresh tokenbxr_…30 days from when it was issued. It works once: every refresh gives a new one.
  • The app refreshes the access token by itself, so you do not sign in again every hour.
  • A refresh gives the app a new refresh token, so a connection you use keeps going. One you do not use for 30 days expires, and you connect again.
  • If an old refresh token is ever used a second time, Boxline ends the whole connection. That protects you if a token leaks. Connect again to continue.
  • Changing or resetting your Boxline password disconnects every connected app. Connect again afterwards.

Connected apps

Open Settings → Connected apps in the console to see every app you have connected. The list is yours: other members of your project have their own.

ColumnWhat it shows
AppThe name the app gave itself.
ProjectThe project it can use, and its organization.
ConnectedThe day you allowed it.
Last usedWhen the app last used the connection, or Never.

Choose Disconnect next to an app, then confirm. The connection and every token under it stop working at once at the API. The hosted server can take up to a minute to refuse the app’s requests. To use the app again, connect it again.

Removing Boxline inside the app may not tell Boxline. To be sure a connection is over, also disconnect it here.

Use it safely

  • Check who is asking before you choose Allow: the app’s name and the address it sends you back to. A warning means Boxline does not know the app.
  • Pick the project with care. The app can use everything in that project that the list above allows, with your role. A project of its own keeps the assistant’s work apart from the rest.
  • Web pages can contain text written to mislead a model, and a connected app can run commands and read and write files in its sessions. Do not point it at sessions that are signed in to accounts it does not need.
  • Do not paste passwords or API keys into the chat. The model sees everything you type.
  • Disconnect apps you no longer use. The Last used column shows which ones those are.

Boxline plugin

Give your AI agents the infrastructure they need: browsers, shells, storage and isolated machines. The Boxline plugin brings that to your assistant in one install: the connection described above, and five skills that tell the assistant how to use it well.

SkillWhat it does
web-researchSearches the web, reads the best sources as a real browser shows them, and answers with links.
crawl-siteReads a whole site or a section of it by following its links, and respects robots.txt.
scrapePulls structured data out of pages as JSON that matches a schema.
browseUses a real cloud browser step by step: open, read, click, type and take screenshots.
sandboxRuns code and shell commands in a clean machine with its own disk, instead of on your computer.
  • ChatGPT and Codex, Claude and Cowork. Once the plugin is listed in their directories, find Boxline there and choose Connect. Until then, connect with the address above.
  • Claude Code. Add the plugin’s marketplace, then install the plugin:
Shell
claude plugin marketplace add Boxline-dev/pluginclaude plugin install boxline@boxline

The plugin sends each request your assistant makes (a search, an address to open, a click, text to type, a file or a command) to Boxline, which runs it in an isolated machine that is yours alone and sends back the result. Saved passwords and live view links are left out of results. See the privacy policy.

Other ways to connect

You can also connect with an API key, run the server on your computer over stdio, or host it yourself. See MCP. A client developer can read how the sign-in works in MCP setup.

These docs describe a beta API. Endpoints, fields and SDK methods may change before general availability; breaking changes will be listed in the changelog.