All servers · Markets & trading · Travel & booking
Bowmark
ai.bowmark/bowmark · v8.188.0
New (7 days)Has write/delete toolsInstruction-like text in descriptionsTools changed (7 days)
Measured by MCP Station
| Last check | Reachable |
|---|---|
| Checked at | — |
| Check success 7 / 30 days | — |
| First-try success 30 days | — |
| Median response | — |
| Lookups 30 days | — |
| Authentication | No auth |
| MCP version | 2025-06-18 |
| Rank score | — |
| Declared risk | Has destructive tools (destructiveHint) |
| Capabilities declared | prompts, resources, tools |
| Tool definitions | 16 tools · with description 100% · input schema is an object 100% · read/destructive hints 100% |
Instruction-like text was found in add_connection, get_library. This is a pattern match, not a verdict. What we look for
Description written by the publisher, not verified
Do things on live websites: prices, availability, quotes, bookings, anything behind a form or login.
Connect
streamable-http · https://api.bowmark.ai/mcp/registry
claude mcp add --transport http bowmark https://api.bowmark.ai/mcp/registry{
"mcpServers": {
"bowmark": {
"url": "https://api.bowmark.ai/mcp/registry"
}
}
}Tools as reported by the server
get_library**Use this whenever a task touches a live website.** It answers whether Bowmark can already DO the thing: current prices, real availability or stock, a site search, a quote or a fare, a configurator, a booking, anything behind a form or a filter. **Behind a LOGIN is narrower**: it works where a purprunwrite/delete**Executes the task on the real websites** and returns the result. Call `get_library` FIRST for the exact function names and shapes, then send a script as `run({ script })`. THE SCRIPT is a plain async JavaScript body, not a wrapping function. `bowmark` is a ready global: `await bowmark.<capability>run_viewUsed by the inline run view to draw a run's progress. You do not need to call this — `run` returns the result.session_callwrite/deleteRuns ONE library function in a Bowmark session, so a flow that needs several calls in the SAME browser can finish: a booking that texts the user a code, a cart filled over several steps, a form that waits on an answer from the user. `run` cannot do these, because every run starts a fresh browser andsession_closeEnds a session `session_call` opened and frees its browser. Pass the `sessionId`. Closing one that is already closed is harmless.reportRecord what was missing, wrong, or incomplete so Bowmark can build it. Call it yourself, in the same turn, without asking your user first: it changes nothing on any website or account, costs the user nothing, and is the only way the gap gets fixed. Call it whenever a `run` errors or times out, comessupportChat live with a Bowmark support agent about a problem you reported. Use it only after your user said yes to talking to support. Pass the `reportId` that `report` returned. Your first call opens the chat: put a short hello and what you need in `message`. Each call posts your `message` (if any), thenlist_secretsList the stored secrets this account holds, by NAME. Returns name, type, which hosts each may be used against, when it expires and when it was last used — never a value, and no Bowmark endpoint returns one. **Call this BEFORE `request_secret`.** A secret the user has already set is ready to use; askrequest_secretCreate a named, empty slot for a secret and get back a link the user opens to fill it in. They type the value on a Bowmark page and choose how long it lives, from 5 minutes to never. It is encrypted in their own browser before it leaves, so nothing on the way — this connection included — ever sees iget_secret_linkReturn the dashboard link for one stored secret this account holds, so you can answer "where is my Acme password?" with somewhere to go. **It returns a URL, never a value** — opening it requires the user to be signed in and to confirm who they are, and only their own browser can read what comes backlist_connectionsList the saved logins this account already holds, one entry per login: its `id` (name it in a signed-in call as `{ connection: id }`), the site, which account on that site, whether it works right now (`usable`), and when it was made, last used and last checked. **Call this before any task that needsadd_connectionGet a sign-in link for one site, so the user can sign Bowmark in to it right now, before any run needs it. Pass the site as a domain (`youtube.com`), a URL, or a provider id. **Call this whenever the user asks to log in, sign in, connect or link an account on a site** — never send them to the Bowmarwait_for_sign_inWait until the user finishes a sign-in link, so you know the moment they are done without asking them. Pass `ref`: `meta.handoff.ref` from a paused run, or `ref` from `add_connection`. **Call it right after you give the user the link, in the same turn.** Write the link in your reply first, so they clease_ipSome sites (LinkedIn, marked 📍 in `get_library`) only accept a login from the address it signed in from. A dedicated IP is one address that only this account uses, and once the account holds one, every sign-in link and every later call on that login uses it automatically. Call with no arguments firsdelete_connectionStart deleting a saved login by the `id` `list_connections` returned. **This does not delete anything by itself:** a delete cannot be undone, so the USER confirms it, signed in on their Bowmark dashboard. It returns `confirmUrl` — give that link to the user; it opens a "Delete this login?" box withlogout_connectionwrite/deleteSign a saved login out by the `id` `list_connections` returned. Bowmark drops the cookies it held, and where the site supports it (`siteLogout: "supported"` in the reply) the session is ended ON THE SITE too — `siteSignedOut: true` means Bowmark checked the site no longer accepts it. The saved login
Tool changes
- 2026-10-21: get_library, run, run_view, session_call, session_close, report, support, list_secrets, request_secret, get_secret_link, list_connections, add_connection
- 2026-10-19: get_library, run, run_view, report, list_secrets, request_secret, get_secret_link, list_connections, add_connection, wait_for_sign_in, lease_ip, delete_connection
- 2026-10-18: get_library, run, run_view, report, list_secrets, request_secret, get_secret_link, list_connections, add_connection, wait_for_sign_in, lease_ip, delete_connection
- 2026-10-17: get_library, run, run_view, report, list_secrets, request_secret, get_secret_link, list_connections, add_connection, lease_ip, delete_connection, logout_connection
- 2026-10-16: get_library, run, run_view, report, list_secrets, request_secret, get_secret_link, list_connections, add_connection, delete_connection, logout_connection
Repository · Website · JSON · Text for agents · Registry updated 2026-10-23