Automate
AI assistants (MCP)
BitAssure has an MCP server, so an AI assistant such as Claude Code, Cursor or VS Code's Copilot can use it while you work. You can ask it to:
- "Record a BitAssure journey on our staging site: sign in as the test user, add the blue T-shirt to the basket, and check the total is $24.99."
- "I changed the checkout code. Run the Checkout journey and tell me what broke."
- "What's failing this morning? Show me the screen where it failed."
- "The total is $24.99 now, on purpose. Update the check."
- "Write a BitAssure flow for our orders API from the routes in this repository, then run it."
The assistant records, writes and runs journeys the same way you would in the portal. Everything it makes is an ordinary journey you can open, edit, schedule and report on.
Connecting
The server is:
https://api.bitassure.app/mcp
There are two ways in. A chat app such as claude.ai or ChatGPT signs you in with your BitAssure account, the way any "Sign in with" button works. A developer tool such as Claude Code, Cursor or VS Code can sign in the same way, or use an API key.
claude.ai and the Claude apps
- In Claude, open Settings → Connectors and choose Add custom connector.
- Name it BitAssure and paste the server address above. Leave the advanced settings empty.
- Press Connect. A BitAssure sign-in page opens: sign in, then press Yes to let Claude use BitAssure.
Claude then works as you, in your account and with your role. The connection lasts 30 days, then Claude asks you to sign in again. Custom connectors are available on Claude's paid plans; on a Team or Enterprise plan an owner may need to add it first.
ChatGPT
In ChatGPT, turn on developer mode (Settings → Apps & Connectors → Advanced settings), then create a connector with the server address above and OAuth as its authentication. Sign in and allow it as above.
With an API key
Create a key under Settings → API keys, named after the assistant, for example "Claude Code". A key acts as a tester and belongs to the account rather than to a person, which suits a shared machine or a pipeline.
Claude Code
claude mcp add --transport http bitassure https://api.bitassure.app/mcp \
--header "Authorization: Bearer ba_your_key"
Cursor
In ~/.cursor/mcp.json (or .cursor/mcp.json in a project):
{
"mcpServers": {
"bitassure": {
"url": "https://api.bitassure.app/mcp",
"headers": { "Authorization": "Bearer ba_your_key" }
}
}
}
VS Code
In .vscode/mcp.json:
{
"servers": {
"bitassure": {
"type": "http",
"url": "https://api.bitassure.app/mcp",
"headers": { "Authorization": "Bearer ba_your_key" }
}
}
}
Claude Code can also sign in instead: leave out --header, then type /mcp in Claude Code and choose Authenticate.
Other assistants
Any assistant that supports remote MCP servers over HTTP works: with an Authorization: Bearer header holding a key, or by signing in (MCP's OAuth sign-in) where the assistant offers it.
Keep the key out of files you commit. Most assistants can read it from an environment variable instead.
What the assistant can do
Set up an app
| Tool | Does |
|---|---|
create_project |
Creates a project, one product of yours such as "Storefront" |
add_platform |
Adds a website or an API to a project, at its address. Phone apps need their build uploaded in the portal. |
Both need an admin or owner, as in the portal, so they work when the assistant is signed in as one. A key acts as a tester and is refused.
Run and read
| Tool | Does |
|---|---|
list_journeys |
Every project, platform and journey, with ids and each journey's latest result |
describe_journey |
A journey in words: its scenarios, steps and checks |
run_journey |
Starts a run of a journey or a whole platform. Spends credits. |
wait_for_run |
Waits up to 50 seconds for a run to finish; the assistant calls it again until it has |
get_run |
A run's result: what did not hold and why, where it stopped, and its link |
recent_runs |
A journey's latest runs, to answer "since when has this been failing?" |
failing_now |
Across the account: what is failing and since when, every check that did not hold, and what nothing covers |
failure_picture |
The screen at the moment a check failed, taken from the run's video |
Look after journeys
| Tool | Does |
|---|---|
change_check |
Changes what a saved check expects, keeping its history: for when the app changed on purpose |
repoint_check |
In a recording, points a check at the element as it is now, when it moved or was renamed |
set_runs_first |
Makes a journey start where others end, such as after "Sign in", so no password is typed again |
describe_journey lists each scenario's and check's id, which these take.
Record a website or phone journey
| Tool | Does |
|---|---|
start_recording |
Opens the recorder on a real browser or phone: a new journey, more of an existing one, or one saved scenario to edit. starts_after makes it begin where another journey ends. |
look |
The screen now: its address, a numbered list of what is on it, and a picture |
act |
One step: click, type, choose, scroll, swipe, answer a pop-up and so on, on element N |
add_check |
Something that should be true about element N: visible, enabled, reads, contains, attribute, on, off |
remove_step, remove_check |
Undo a step or a check |
save_scenario |
Saves what was recorded since the last save as a scenario, such as "Verify Basket" |
finish |
Saves or throws away anything unsaved and frees the browser or phone |
The assistant picks elements by their number on the screen. BitAssure still decides how to find each element again on the next run, so a journey recorded this way is as sturdy as one you record yourself.
Write an API flow
| Tool | Does |
|---|---|
create_flow, show_flow |
Start a flow on an API platform, or show one with its ids |
add_call, change_call, remove_call |
The calls, in order, with headers, body and {{values}} |
try_call |
Sends one call and shows the answer. Free. |
add_check_on_answer, remove_check_on_answer |
What each answer should be: status, time, body, a JSON value, a header |
carry_value, remove_carried_value |
Take a value from one answer for later calls, such as a token |
See APIs and load testing for what each check and placeholder means.
Watching it record
When the assistant starts a recording, it gives a link to the recorder in the portal. Open it and you see the same browser or phone, with each step and check appearing as the assistant makes it. You can take over at any point: what you do and what the assistant does go into the same recording.
What it costs
The same as anything else: a website or API run is 1 credit, a phone run 1 credit a minute, and the recorder is charged by the clock while it is open (1 credit per 10 minutes on a website, 1 a minute on a phone). An assistant is slower than a person, so recording a phone through one costs more than recording it yourself. run_journey is marked as spending, so most assistants ask you before using it.
Safety
- The assistant can do what the tools offer, and no more. It can set up an app, record, write, run and read, but cannot delete journeys, change members, create keys or touch billing: none of those are tools. Signed in, it acts with your role (a viewer cannot use it, since every tool call counts as a change); with a key, as a tester.
- A sign-in given to an assistant opens the MCP server only. It cannot be used against the rest of BitAssure's API, and you can end it by removing the connector in the assistant. To end every sign-in at once, change your password under Settings → Your account and tick Sign out from other devices.
- Sign in once, then never again. Record signing in as its own journey (by hand, or with a test account), then have the assistant start other journeys after it with
starts_afterorset_runs_first. It records them already signed in and never needs the password. - Use test accounts. Whatever the assistant types, it also sends to its AI provider, and what is typed into a journey is stored with it. Never give an assistant a real customer's password.
- Credentials for API platforms are set by a person under the platform in the portal. The assistant writes calls that use them but never sees them.
- Everything is reviewable. An assistant's journey is an ordinary journey: read it on its In words tab, fix it with Change, or delete it.
Limits
- Recording on an iPhone through an assistant has not been tried yet. Websites and Android have.
- "Scroll until you see…" is not offered. The assistant scrolls and then acts on what came into view.
- A phone can take a minute or two to open.
start_recordingthen answers that it is still opening, and the assistant asks again.
This page as Markdown, for AI assistants: /docs/mcp.md. Every page at once: /llms-full.txt.