# @roveapi/mcp

MCP server for Rove browser automation API — use from Claude, Cursor, VS Code

- **Type:** MCP server
- **Trust:** 40/100 (C), scored on the package rubric
- **Verification:** community-indexed — nobody has claimed this listing
- **Version:** 1.10.0
- **Author:** Unknown
- **License:** MIT
- **npm:** @roveapi/mcp
- **Endpoints:** streamable-http https://api.roveapi.com/mcp
- **Source:** https://github.com/noncelogic/rove
- **Endpoint health:** reachable (last checked 2026-10-14T10:08:22.226Z, 1 sample) — uptime is not a security property and is not part of the trust score
- **Compatible clients:** claude-code, cursor, copilot, chatgpt, gemini (basis: transport)

## Trust

40/100 (C), scored on the package rubric
- Publisher verified: no
- Install scripts: suspicious script found
- Prompt-injection scan: not run
- Obfuscation scan: not run
- Evidence age: 0 days

## Security scan

- **Status:** warnings
- **Scanned:** 2026-10-14T10:08:00.349Z
- **Version scanned:** 1.10.0
- **CVEs:** none found by OSV at scan time
**Findings**
- injection-shaped content (warning) in the `create_viewer_grant` tool: Exfiltration-shaped instruction

## Tools

31 declared. Statically extracted from the shipped source — a floor on the surface, not a census.
- `buy_credits` — Without arguments: shows Rove credit prices and whether this key may buy. With item_id: buys that credit pack and may charge the account owner's saved card, or 
- `get_credit_catalogue` — Shows Rove credit packs, subscription tiers and what an action or supervised minute costs. Never buys.
- `get_credit_balance` — Shows this account's credits, exact to the millicredit, and whether this key may buy more and within what limits.
- `get_purchase` — Shows one purchase this key made and what to do next (for example, a payment link for a person).
- `list_purchases` — Lists purchases this key made, newest first.
- `cancel_purchase` — Cancels an unpaid purchase this key made, so its payment link stops working.
- `simulate_purchase` — Test keys only: moves a simulated purchase to paid, expired, failed or needs-authentication. Never charges.
- `navigate` — Navigate to a URL in a hosted Chromium browser and return the page title and final URL after redirects. Creates a new browser session automatically if no sessio
- `interact` — Perform a click or fill action on a page element in an active browser session. Use "click" to click buttons, links, checkboxes, or any clickable element by CSS 
- `extract_schema` — Extract structured data from a web page according to a JSON schema. Navigates to the given URL, renders the page in a headless browser, and returns data matchin
- `screenshot` — Capture a PNG screenshot of a web page. Operates in two modes: (1) Pass a session_id to screenshot the current page in an active session — use this when you nee
- `get_a11y_tree` — Get a structured accessibility tree snapshot of the current page in an active browser session. Returns a hierarchical representation of all visible elements inc
- `close_session` — Close a browser session and release its server-side resources (browser context, memory, and any open pages). Call this when you are done with a browser session 
- `click` — Click an element on the page by CSS selector, accessible label or a11y tree ref. Use this to interact with buttons, links, checkboxes, and other clickable eleme
- `fill` — Type text into a form field. By default clears any existing value first, then types the new value.
- `get_text` — Extract the text content of an element on the page. Useful for reading specific values like prices, headings, or status messages.
- `scroll` — Scroll the page in a given direction, or scroll a specific scrollable element. Useful for loading lazy content or reaching elements below the fold.
- `evaluate` — Execute arbitrary JavaScript in the browser page context. Returns the result of the expression. Use for advanced DOM queries, custom extraction logic, or page m
- `list_pages` — List the pages open in this session's browser, with page ids, opener, URL, title and status, and which page is current. Popups the page opened appear here. Does
- `switch_page` — Make another open page current. Later actions without page_id run on it, and in a supervised session the viewer shows it.
- `close_page` — Close an open page. If it was current, the session returns to the page that was current when it opened. The last open page cannot be closed.
- `wait_for_popup` — Wait for a popup opened by your last navigate, click, fill, scroll or evaluate, even one that has already opened, and return its page_id. In a supervised sessio
- `list_history` — List the pages this API key's supervised browser profile visited, newest first, across sessions: URL, title, time, session id and whether the agent or a human h
- `restore_pages` — Answer a supervised session's restore offer. When the previous session on this profile ended unexpectedly (crash, hang or restart), list_pages and the session s
- `clear_history` — Delete this API key's supervised browsing history. Cookies, storage and open-pages restore are kept. Refused (profile-busy) while a supervised session on this k
- `delete_profile` — Delete this API key's whole supervised browser profile: cookies, storage, history and any restore offer. The next session starts signed out. Refused (profile-bu
- `list_sessions` — Show the current active browser session for this MCP connection, including its URL, page title, and expiry.
- `start_supervised_session` — Explicitly create a supervised browser session. Human viewer input is exclusive while control is held; after handback the agent must obtain a fresh observation 
- `create_viewer_grant` — Create a one-time, origin-bound viewer link for the active supervised session. Give viewer_url to the human operator (one click opens that session). Never send 
- `authenticate` — Authenticate with a verified email and obtain a live API key. Required when no key is configured and when the configured key starts with rvp_test_, because test
- `account_info`

## Install

**Verdict: do-not-install** — Do not install: 1 injection-shaped pattern found in this entry's own text — it may try to steer the model that loads it.
**Blocking**
- 1 injection-shaped pattern found in this entry's own text — it may try to steer the model that loads it. — tool:create_viewer_grant: Exfiltration-shaped instruction
**Cautions** (coverage gaps and advisories — never blocking)
- No publisher has proved control of this listing; it is indexed, not vouched for.
**Client configuration withheld.** Client configs are withheld because this entry has a blocking finding. Show the warnings below to the person installing it.
If they have seen the findings and still want to proceed, request the plan again with acknowledge_warnings=true.

## Blast radius

Extensive blast radius — deletes data; runs locally and hosted.
- Floor 56, ceiling 56 (tier: extensive)
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/%40roveapi%2Fmcp
- Install plan: https://forgeregistry.com/api/v1/packages/%40roveapi%2Fmcp/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/%40roveapi%2Fmcp
- HTML page: https://forgeregistry.com/registry/%40roveapi%2Fmcp
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
