ai.bowmark/bowmark
up checked
Unclaimed · Unverified
Agent searches it appeared in, last 30 days: 0. Run this server? Claim the listing: verified label, uptime alerts and analytics.
Publisher-provided title
Bowmark web data: LinkedIn, Amazon, YouTube, Reddit, Airbnb, Instagram
Publisher-provided description
Web scraping and automation for AI agents: live prices, quotes, bookings, anything behind a login.
Summary by lookupd
Lets an agent pull live prices, availability and bookings from sites like Amazon or Airbnb, including behind logins, via browser automation.
Install
Claude Code, remote (streamable-http)
claude mcp add --transport http bowmark https://api.bowmark.ai/mcp/registry
Claude Code, pypi package (stdio)
claude mcp add bowmark -- uvx bowmark-mcp
Claude Code, npm package (stdio)
claude mcp add bowmark -- npx -y @bowmark/mcp
Codex, remote (streamable-http)
codex mcp add bowmark --url https://api.bowmark.ai/mcp/registry
Codex, pypi package (stdio)
codex mcp add bowmark -- uvx bowmark-mcp
Codex, npm package (stdio)
codex mcp add bowmark -- npx -y @bowmark/mcp
Cursor, remote (streamable-http) → .cursor/mcp.json
{
"mcpServers": {
"bowmark": {
"url": "https://api.bowmark.ai/mcp/registry"
}
}
}Cursor, pypi package (stdio) → .cursor/mcp.json
{
"mcpServers": {
"bowmark": {
"command": "uvx",
"args": [
"bowmark-mcp"
]
}
}
}Cursor, npm package (stdio) → .cursor/mcp.json
{
"mcpServers": {
"bowmark": {
"command": "npx",
"args": [
"-y",
"@bowmark/mcp"
]
}
}
}Other clients: docs. Or tell your agent: Set up lookupd for me: read https://lookupd.com/agent.md and follow it.
Tools (29 tools)
Publisher-provided text
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 searun**Executes the task on live websites** and returns the result. Call `get_library` FIRST, then `run({ script })`. The same script can run from your app: POST `htjig_openMake the user a "jig": their own copy of a website, that you curate as they talk. Asked for "a jig of YouTube", build a page that LOOKS like that site with Bowmjig_listThe jigs this user has, newest change first: id, slug, title, the built-in it started from, and when it last changed. A copy of someone's published jig also hasjig_searchSearch the public jigs other people published: "is there a jig for my Amazon orders?". Call it BEFORE building a page from scratch. Leave `q` empty for the newejig_publishPublish the user's jig (name it by `jigId` or your jig's `jigSlug`) as a listing others can get: it snapshots the page and state AS THEY ARE NOW into version N+jig_set_handleClaim the user's public handle: the @name in the links to pages they publish, bowmark.ai/jigs/@<handle>/<slug>. It is PUBLIC and PERMANENT: it can never be chanjig_getCopy someone's published jig into THIS user's account, from its current version. The copy is the user's own: it runs as them with their logins, never the authorjig_updateChange a page you opened with `jig_open`: merge `state` into its state (a key set to null is removed), replace its `html` or `title`, or change part of the htmljig_pull_updateFor a jig the user got from someone's listing (`jig_list` shows `updateAvailable`): the three pages a merge needs. `base` is the version their copy came from, `jig_readList a jig's files with their byte sizes, or with `path` read one file's text. A page written as `html` is one file, index.html. Read before you edit a jig youjig_lookSee what an open jig is showing the user right now — the items on screen, which view they are on — plus what they just did on it (watched, hid, searched) and itsession_callRuns ONE library function in a Bowmark session, so a flow that needs several calls in the SAME session can finish: a booking that texts the user a code, a cartsession_closeEnds a session `session_call` opened and frees what it held. 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 onget_usageSee the real cost of calls on this account, itemized by resource (provider calls, browser sessions, IP leases) and aggregated in dollars. Pass no arguments to sllm_pollLets this chat answer the AI calls an open Bowmark page makes, so they cost nothing. Returns up to 5 pending jobs ({ jobId, system, prompt, toolName, inputSchemllm_answerAnswers one job from llm_poll. `answer` must be an object matching that job's inputSchema. A wrong shape is refused with the reason and the job stays open, so cllm_detachDetaches this chat at once, so open Bowmark pages' AI calls go back to Bowmark's own model instead of waiting for this chat.supportChat 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 `reporlist_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 — neverrequest_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, frget_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, nevlist_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 oadd_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, orwait_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 `reflease_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 udelete_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 confirlogout_connectionSign 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
Details
- Version: 8.219.0
- Transports: streamable-http, stdio
- Uptime (7 days): 100%
- Median latency: 809 ms
- First indexed:
- Last seen in registry:
- Repository: https://github.com/bowmark-ai/skill
- Website: https://bowmark.ai
Badge for your README
Shows this live status and links here; updates hourly.
[](https://lookupd.com/servers/ai.bowmark/bowmark)
- 62033 servers
- Last crawl: 2026-11-11T15:38:39.561Z
- API base:
https://api.lookupd.com - MCP URL:
https://api.lookupd.com/mcp