Skip to main content
Glama
752,056 tools. Updated 2026-11-06 17:04

"Browser automation tools for testing purposes" matching MCP tools:

  • The curated buyer-intent collections (e.g. mcp-servers, testing-qa, browser-automation). Use get_collection for the ranked tools inside one.
    ConnectorNo auth
  • Change an existing automation by id. action=disable stops it firing (use this to turn off a misbehaving rule); action=enable resumes it; action=delete removes it. To read one, use relm_get_automation. To change a rule's trigger/conditions/actions, delete and recreate.
    Connector
    Destructive
    No auth
  • Check if the user has completed browser sign-in for a device auth request. Poll this after calling initiate_device_auth. Returns status 'pending' while waiting, or 'complete' with an api_key when the user has signed in. Use the returned api_key as the authorization parameter in other tools. Args: user_code: The user_code returned by initiate_device_auth. Returns: Pending: {"status": "pending"} Complete: {"status": "complete", "api_key": "hk_..."} Error: {"error": "..."}
    ConnectorNo auth
  • Submit an uploaded PDF for faxing. Step 1 (before this tool): upload the PDF over plain HTTP multipart, using any HTTP client you have — shell, JavaScript fetch with FormData, Python, etc.: curl -F "file=@document.pdf" https://www.sendthisfax.com/api/upload fetch("https://www.sendthisfax.com/api/upload", {method: "POST", body: formDataWithFile}) The response contains fax_public_id and page_count. PDFs must be unencrypted, at most 50 MB and 1000 pages. Step 2: call this tool with the fax_public_id and the recipient fax number. Two modes: - With an API key (Authorization: Bearer stf_live_... on this MCP connection): the fax price is debited from the prepaid credit balance and sending starts immediately — no checkout, no browser. sender_email and billing_country are optional (they default to the key's records). Buy credits at https://www.sendthisfax.com/en/credits. - Without an API key: sender_email and billing_country are REQUIRED and the tool returns a checkout_url the USER must pay in a browser; the fax is sent automatically once paid. In both modes, poll get_fax_status until status reaches "delivered" or "failed" (failures after payment are auto-refunded). For integration testing, +19898989898 is the designated test recipient number.
    ConnectorNo auth
  • Set YOUR notification preferences for one or more categories. Categories you do not mention keep their current setting. Use resetCategories to drop your override so a category follows the organization default again — an entry in categoriesJson can only set an override, never remove one. Valid categories: api_design, testing, project, mock_server, style_guide, team, portal, monitoring, security, billing, deprecation. Use this for your own preferences; for the organization defaults use update_org_notification_defaults.
    Connector
    Destructive
    API key
  • Manual fallback: returns a node type+operation's config SCHEMA (the fields you can set) — NOT a live node's saved config (use get_node for that). Takes "type:operation" pairs (e.g. ["automation-slack:send_message_to_channel"]). Prefer search_operations(detail_level='full') for intent lookup, or update_workflow(include_configs=true) while building.
    ConnectorOAuth

Matching MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Provides testing and quality assurance tools for AI agents via MCP, enabling generation of test cases, mock data, API mocks, coverage analysis, and assertions.
    5
    33 npm
    MIT

Matching MCP Connectors

  • Programmatic headless browser sessions: create, interact, browse, and extract - rendered in a real

  • A real Chromium browser agents can pay for per action over x402 (USDC on Base): navigate $0.005, extract $0.005, accessibility snapshot $0.005, act $0.01, screenshot $0.02, close free. Also runs free self-hosted over stdio via npx @scriptmasterlabs/agent-browser. Six tools with structured error codes and a public receipts log. Source: https://gitlab.com/timothy.walton45/agent-browser

  • Identify what an X (formerly Twitter) URL points at before fetching it. Give any x.com or twitter.com URL (mobile links, query params, /i/web/status forms are fine); get back {type: profile|tweet, id, handle, canonical_url}. Tweet URLs yield the numeric id for x_get_tweet; profile URLs yield the handle for x_get_profile or x_get_tweets. Costs 2 credits and parses offline without fetching the page. t.co short links cannot be expanded offline and return INVALID_INPUT telling you so; expand them in your own browser step first. Skip this tool when you already have a handle or tweet id: the other X tools accept those directly.
    ConnectorOAuth
  • Search 1,000+ vetted AI use cases by keyword, industry, or business workflow (e.g. 'invoice', 'dental', 'customer support'). Use when someone asks how AI can help their business, wants AI ideas for an industry, or looks for automation opportunities. Also use it to find the slug before get_agent_playbook or run_agent. Returns titles, summaries, and links. Public: no sign-in.
    ConnectorNo auth
  • Polls a login session created by create_auth_session until the user completes the browser login. Poll every 2-3 seconds while status is 'pending'. Status 'active' reports the GRANTED scope, read back from the issued token. Completing the login does NOT authenticate this MCP session: pass session_request_id on every protected call afterwards. Omit it and the server falls back to your connector's bearer token, which usually carries content scope only, so content tools keep working while admin tools like pair_by_code refuse with admin_scope_required. The raw token is intentionally not returned over MCP. 'expired' means start over with create_auth_session.
    ConnectorNo auth
  • Shows the history of past recipe runs and their results (recorded by recipe_run), so you can reuse, compare, or debug an automation. Pass `name` for one recipe's runs, or omit for a compact history across all recipes. Pass `run_id` (with `name`) to get that run in full detail. Newest first.
    ConnectorOAuth
  • Use first when a buyer is exploring LeadProof without supplying workflow data. Returns the official no-purchase sequence: buyer guide, fictional example audit, browser-only calculator, public workflow tests, and no-card trial. For a scored workflow diagnosis, use audit_lead_workflow; for replay testing, use get_leadproof_replay_trial; for paid checkout, use get_leadproof_checkout only after authorization.
    ConnectorNo auth
  • Create a scheduled agent — a recurring or one-time automation that runs on a timer in a real Chrome browser. Two modes. WORKFLOW MODE: pass workflowId plus a schedule — the platform copies everything else (prompt, starting URL, output contract, model, proxy, policy, files) from the workflow and bakes your variables into the prompt; results and memory stay centralised on the workflow. STANDALONE MODE: omit workflowId and provide name, prompt (a Goal / Ground rules / Stages / Output browsing runbook — see the prompt field description), and a schedule; the connection's environment is used automatically. Ask the user only what it should do and when it should run, in plain language — pick sensible defaults for everything else and state them; never ask about environments or technical settings. Results are delivered to your connected chat and appear in session history.
    ConnectorNo auth
  • Generate synthetic / fake user profiles via the MwVideos random_users API (POST /mwvideos/api/random_users). Returns name, gender, location, email, login, dob, phone, picture, and nat. Use when the user asks for random users, fake people, sample contacts, demo personas, UI fixtures, or test profiles. Pass `results` for how many profiles (default 1, minimum 1) and `isPro` as 0 or 1 when relevant (default 0). Authenticated user_id is injected server-side — do not invent profiles; always call this tool. These are FAKE people for demos and testing, not real PII.
    ConnectorOAuth
  • Retrieve the complete markdown of one documentation article by the id returned from `search` (for example `en/claude-code/advanced-techniques/hooks-automation`). The text is returned in full; `metadata.gated` only reports whether the article sits behind the paywall on the web. An unknown id is an error — call `search` first.
    ConnectorNo auth
  • Group visitors by any one of 25 dimensions, ranked by visitors descending, for a date range. Generic form of the named get_* breakdown tools: use it for dimensions without one (entry_page, exit_link, browser_version, os_version, utm_source, utm_medium, utm_term, utm_content, ref, source, via, all_params); for page, referrer, country, region, city, device, browser, os, campaign, hostname, channel, or goal the dedicated tool returns the same rows. Combine dimension with filter_* to drill in: dimension page plus filter_utm_campaign shows where one campaign landed. Rows carry value, visitors, revenue, and percentage with pagination.total; limit defaults to 100 (max 1000). Dates default to the last 30 days; all filter_* arguments apply. Requires websiteId or domain with a workspace token.
    ConnectorOAuth
  • Start connecting GitHub for the CALLER'S OWN FindAgent account so findagent_import_repo / findagent_list_repos can pull their repos. Returns whether GitHub is already connected plus a browser connect URL — the caller opens it, authorizes GitHub, and the token is stored server-side (this tool grants nothing itself; the actual connect happens in the browser). Call this first if import_repo or list_repos reports github not connected. The connection is scoped to THIS FindAgent account, so authorize on the same browser account. To switch GitHub accounts, use findagent_disconnect_github first.
    ConnectorOAuth
  • List open times on Upforge's calendar for a free consultation (usually 30 minutes), in the person's own timezone. Call this before book_consultation and let the person pick a time; never pick one for them. Meeting types come live from the scheduler: general-inquiry is the default, and service types such as web-design, application-development or ai-automation route to the right person. Bookings need about a day's notice, so the search starts tomorrow.
    ConnectorNo auth
  • Create a new automation DEFINITION for the authenticated user. The new automation is always created INACTIVE (a definition only) — it does NOT run, send, or activate. Use when the user wants to define a new automation by name. Do NOT use to activate, run, or wire the automation's step graph — activation is a separate, later capability and is not available here. Do NOT use to edit an existing automation — use mcp_crm_automations_update. The automation's status cannot be set via this tool. Tenant is bound to the session and cannot be changed via arguments. Automation-level RULES (all optional, and all independent of the step graph — use mcp_crm_automations_set_steps for that): entryConditions / exitConditions / restartConditions are arrays of {type, segmentId, operator, contactFilters, campaignIds, linkUrl} where type is one of added_to_lists, removed_from_lists, contact_in_segment, contact_matches_filters, email_opened, email_clicked, email_unsubscribed; a membership type needs segmentId, contact_matches_filters needs contactFilters, and the email types take optional campaignIds (plus linkUrl on email_clicked). operator is MATCHES or DOES_NOT_MATCH. Pass an EMPTY array to clear a slot; omit the key to leave it unchanged. reentryPolicy is once (a contact runs this automation at most once) or every_time, with reentryWaitMinutes as the cool-down before a contact may re-enter. onDeactivate is continue (in-flight contacts finish) or cancel (in-flight contacts are cancelled when a human deactivates the automation). Returns the created automation projection (id, name, status, rules, version).
    ConnectorOAuth
  • Impairment testing: goodwill impairment and intangible impairment under US GAAP (ASC 350) or IFRS (IAS 36). Method selects the formula. Use for annual or triggering-event impairment testing; goodwill_impairment compares a reporting unit's carrying value with its fair value. To compute the initial goodwill or allocation use valuation_goodwill_ppa; for the underlying asset fair values use the relevant asset-type tool. Per method: goodwill_impairment needs carrying_value + fair_value (optional: reporting_unit, standard); intangible_impairment needs carrying_value (optional: fair_value, recoverable_amount, standard). fair_value is required for ASC350; recoverable_amount is required for IAS36. Only method is required; all other parameters are method-dependent — supply those the selected method names and omit the rest (defaults apply where defined). Rates and premiums are decimals (0.10 = 10%). Pure arithmetic: no I/O and no external calls, rounded to 2 decimals; parameters belonging to other methods are accepted and ignored. An unknown method, or a missing method-required parameter, returns an error instead of a value.
    ConnectorNo auth
  • List a Dutify reference-data enum (status types, custom-field types, view types, automation action/condition types, access levels, etc.). Returns the authoritative set of values the backend accepts — call this BEFORE guessing enum strings on a create/update payload to avoid 400s. Categories: - custom-field-types: Custom-field type catalogue: text, number, dropdown, date, money, file, rollup, formula, … Use the `identifier` from each row as the `fieldType` value when creating a custom field via /v1/lists/{id}/custom-fields or pm_create_custom_field. - custom-field-icon-options: Custom-field icon catalogue: supported iconNames, emojiNames, and defaultIconsByFieldType. Use one of these keys as the `emoji` value; keep custom-field names plain. Agent preference: choose a semantically matching emojiNames key when available (severity/urgency=fire, target/goal=direct_hit, launch=rocket, approval/success=white_check_mark, location=pushpin, budget=moneybag); use iconNames for structural/type affordances like CalendarBlank. - resource-view-types: Resource view types: list (1), board (2), table (3), dashboard (4), gantt (5), calendar (6), gallery (7), whiteboard (9). The numeric `typeId` is what /v1/views and view-config endpoints accept. - status-types: Status type enum — ACTIVE, DONE, CLOSED. Used when grouping tasks or filtering for visibility. - activity-types: Activity log event types — status_changed, task_created, comment_added, automation_executed, etc. - automation-action-types: Automation action types — SET_STATUS, SET_PRIORITY, SET_ASSIGNEES, ADD_COMMENT, etc. Use when building an automation rule. - automation-condition-types: Automation condition types (predicate categories) — STATUS, PRIORITY, DUE_DATE, CUSTOM_FIELD, etc. - automation-field-operators: Operators valid in automation condition predicates — equals, not_equals, greater_than, in, is_set, etc. - access-levels: Entity access levels — VIEW, COMMENT, EDIT, FULL — used in user/team access grants. - workspace-access-level-permissions: Workspace role → permission map (OWNER/ADMIN/MEMBER/GUEST). Tells you which capabilities each role grants. Auth: the resources are @PermitAll for anonymous callers, but the ApiKeyScopeFilter still gates API-key requests. The `metadata:read` scope covers custom-field-types / custom-field-icon-options / resource-view-types / status-types / activity-types / access-levels / workspace-access-level-permissions. The three automation-* categories live under /v1/automation/* and require `automations:read` instead. If the API key lacks the required scope the call returns 403 — pick a category your key covers, or have the user mint a key with both `metadata:read` and `automations:read`.
    ConnectorNo auth
  • List a Dutify reference-data enum (status types, custom-field types, view types, automation action/condition types, access levels, etc.). Returns the authoritative set of values the backend accepts — call this BEFORE guessing enum strings on a create/update payload to avoid 400s. Categories: - custom-field-types: Custom-field type catalogue: text, number, dropdown, date, money, file, rollup, formula, … Use the `identifier` from each row as the `fieldType` value when creating a custom field via /v1/lists/{id}/custom-fields or pm_create_custom_field. - custom-field-icon-options: Custom-field icon catalogue: supported iconNames, emojiNames, and defaultIconsByFieldType. Use one of these keys as the `emoji` value; keep custom-field names plain. Agent preference: choose a semantically matching emojiNames key when available (severity/urgency=fire, target/goal=direct_hit, launch=rocket, approval/success=white_check_mark, location=pushpin, budget=moneybag); use iconNames for structural/type affordances like CalendarBlank. - resource-view-types: Resource view types: list (1), board (2), table (3), dashboard (4), gantt (5), calendar (6), gallery (7), whiteboard (9). The numeric `typeId` is what /v1/views and view-config endpoints accept. - status-types: Status type enum — ACTIVE, DONE, CLOSED. Used when grouping tasks or filtering for visibility. - activity-types: Activity log event types — status_changed, task_created, comment_added, automation_executed, etc. - automation-action-types: Automation action types — SET_STATUS, SET_PRIORITY, SET_ASSIGNEES, ADD_COMMENT, etc. Use when building an automation rule. - automation-condition-types: Automation condition types (predicate categories) — STATUS, PRIORITY, DUE_DATE, CUSTOM_FIELD, etc. - automation-field-operators: Operators valid in automation condition predicates — equals, not_equals, greater_than, in, is_set, etc. - access-levels: Entity access levels — VIEW, COMMENT, EDIT, FULL — used in user/team access grants. - workspace-access-level-permissions: Workspace role → permission map (OWNER/ADMIN/MEMBER/GUEST). Tells you which capabilities each role grants. Auth: the resources are @PermitAll for anonymous callers, but the ApiKeyScopeFilter still gates API-key requests. The `metadata:read` scope covers custom-field-types / custom-field-icon-options / resource-view-types / status-types / activity-types / access-levels / workspace-access-level-permissions. The three automation-* categories live under /v1/automation/* and require `automations:read` instead. If the API key lacks the required scope the call returns 403 — pick a category your key covers, or have the user mint a key with both `metadata:read` and `automations:read`.
    ConnectorNo auth