Manzanas vs Wavexis MCP — MCP Server Comparison | AllMCPs
Side-by-Side Model Context Protocol Comparison
Manzanas vs Wavexis MCP
In-depth architectural comparison of the Manzanas and Wavexis MCP MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
Manzanas
Browser Automation · Local stdio
Quality: 79/100 (Great) | Auth: No auth required
Wavexis MCP
Browser Automation · Local stdio
Quality: 59/100 (Good) | Auth: No auth required
Verdict Summary: Choose Manzanas if you need specialized Browser Automation tools running via a local process. Choose Wavexis MCP if your workspace requires Browser Automation integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose Manzanas when:
You need dedicated capabilities in the Browser Automation domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: No auth required (Free / Open Source).
Primary tools included: Accessibility-based UI inspection and interaction, TTL leases with FIFO queuing, Warm simulator park and thaw.
Drive iOS simulators from Claude Code, Cursor or Codex by accessibility label instead of screenshot-and-tap-coordinates. Exposes ui_tree, tap_element, type_into_element, wait_for_element and scroll_to_element, and every action reports whether the UI actually changed. A Mac daemon underneath hands out simulators as TTL leases with a queue and keeps a SIGSTOP warm pool, so a lease gets a live simulator in about 0.28s instead of a 7s cold boot, and multiple agents can share one Mac without colliding. Open source, MIT.
Tools & Capabilities Breakdown
Manzanas Tools (6)
Accessibility-based UI inspection and interaction
TTL leases with FIFO queuing
Warm simulator park and thaw
Per-action UI-change reporting
Journaled artifacts and Markdown evidence export
stdio MCP interface for agent clients
Wavexis MCP Tools (72)
wavexis_session_open
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
Manzanas is categorized under Browser Automation and uses a local stdio subprocess. In contrast, Wavexis MCP belongs to Browser Automation using local stdio subprocess. Select Manzanas when you need capabilities focused on browser automation and Wavexis MCP when you require tools for browser automation.
Launch a persistent browser session for multi-step workflows.
Call once at the start of a task and reuse the returned session_id for
all subsequent calls; use wavexis_navigate with session_id omitted for
one-off page fetches instead.
Side effects: Launches a browser process (or connects to an existing
one) and allocates server-side session state; may open network
connections to remote/cloud browsers.
Returns: JSON string with keys: 'status' ('ok'/'error'),
'session_id' (str), 'backend' (str).
wavexis_session_close
Close a browser session and release all associated resources.
Call when the session is no longer needed to free memory and browser
processes; use wavexis_close_tab to close individual tabs instead.
Side effects: Terminates the browser process (or disconnects from a
remote one) and frees session state. Destructive — all unsaved page
state is lost.
Returns: JSON string with keys: 'status' ('ok'/'error'),
'session_id' (str).
wavexis_session_info
Query metadata and current URL of an active browser session.
Use to inspect session health or retrieve the current page URL; use
wavexis_list_tabs for tab-level details instead.
Side effects: None — read-only; queries in-memory session state and
the browser's current URL.
Returns: JSON string with keys: 'status' ('ok'/'error'),
'session_id' (str), 'backend' (str), 'created_at' (str),
'current_url' (str).
wavexis_navigate
Navigate the browser to a URL with a configurable wait strategy.
Use for direct URL navigation; use wavexis_back/wavexis_forward for
history navigation, or wavexis_act for natural-language interaction
instead.
Side effects: Issues a network request to the target URL and replaces
the current page content; may auto-create a stateless session if
session_id is omitted.
Returns: JSON string with keys: 'status' ('ok'/'error'), 'url' (str).
wavexis_back
Navigate backward one step in the browser history.
Use for history navigation instead of wavexis_navigate when the target
is the previous page.
Side effects: Changes the active page to the previous history entry;
may trigger network requests if that page was not cached.
Returns: JSON string with keys: 'status' ('ok'/'error').
wavexis_forward
Navigate forward one step in the browser history.
Use after wavexis_back to restore a page; use wavexis_navigate for
direct URL navigation instead.
Side effects: Changes the active page to the next history entry; may
trigger network requests if that page was not cached.
Returns: JSON string with keys: 'status' ('ok'/'error').
wavexis_reload
Reload the current page, optionally bypassing the cache.
Use to refresh stale content or retry a failed load; use
wavexis_navigate to go to a different URL instead.
Side effects: Re-issues network requests for the current page and its
resources; discards in-memory page state.
Returns: JSON string with keys: 'status' ('ok'/'error').
wavexis_stop
Stop all pending navigations and resource loads in the session.
Use when a page load is hanging or no longer needed; use wavexis_wait
to wait for a load to complete instead.
Side effects: Aborts in-flight network requests and pending
navigations; the page is left in its current partial state.
Returns: JSON string with keys: 'status' ('ok'/'error').
wavexis_wait
Block until a page condition (load, selector, URL, network idle) is met.
Use after wavexis_navigate when the wait strategy was 'none', or to
wait for dynamic content; use wavexis_stop to cancel a load instead.
Side effects: None — read-only polling with no page mutations; blocks
the tool call up to the configured timeout.
Returns: JSON string with keys: 'status' ('ok'/'error'),
'elapsed_ms' (int).
wavexis_screenshot
Capture a screenshot of a web page or matched element.
Use ``wavexis_pdf`` when a print-ready document is needed, or
``wavexis_annotated_screenshot`` when labelled element markers are
required.
Side effects: launches/acquires a browser backend, navigates to ``url``
if provided, optionally evaluates ``js``; writes to ``output_path`` when
given.
Returns: JSON string with keys: 'status' ('ok'/'error'), 'format'
(str), 'base64' (str) or 'path' (str), 'size_bytes' (int).
wavexis_pdf
Generate a PDF document from a web page.
Use ``wavexis_screenshot`` for image capture, or ``wavexis_page_pdf``
when pixel-level control over paper size and margins is required.
Side effects: launches/acquires a browser backend, navigates to ``url``
if provided, optionally evaluates ``js``; writes to ``output_path`` when
given.
Returns: JSON string with keys: 'status' ('ok'/'error'), 'base64'
(str) or 'path' (str), 'size_bytes' (int).
wavexis_scrape
Scrape data from multiple URLs by evaluating a JS expression on each.
Use ``wavexis_eval`` for single-page evaluation, or ``wavexis_scrape``
when the same expression must run across many pages with pagination.
Side effects: launches/acquires a browser backend, navigates to each
URL in ``urls`` sequentially, evaluates ``expression`` in every page
context.
Returns: JSON string with keys: 'status' ('ok'/'error'), 'results'
(list[dict[str, Any]]), 'format' (str), 'count' (int), 'total' (int).