mcpselenium AGENTS.md

A set of AGENTS.md instructions for an MCP server that controls Selenium WebDriver browsers. Selenium WebDriver automates browsers for testing and other browser tasks.

In plain words
What is it for?
It helps maintain the JavaScript server, understand its browser sessions and diagnostics, and add or test browser-automation features.
Why use it?
It gives developers the project map, architecture, conventions, and guidance for adding tools to the server.

Instructions file for CodexOpenCode

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/navin2031992/mcpselenium/agents-md
Clone the repo
git clone --depth 1 https://github.com/navin2031992/mcpselenium

Made for: Codex, OpenCode.

Per session 948 This file is loaded in full into every session.
When invoked 948 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00948 $0.00948
Opus 5 $0.00474 $0.00474
Sonnet 5 $0.00190 $0.00190
Haiku 4.5 $0.00095 $0.00095

Measured 2d ago against content hash 72ebe56b99f3, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

mcpselenium AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

100% identical to mcp-selenium AGENTS.md — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

AGENTS.md · 85 lines

How it starts

The opening of the file, as written. The whole thing — 85 lines — stays where its author put it; the contents beside it link to each section on GitHub.

AGENTS.md

MCP server for Selenium WebDriver browser automation. JavaScript (ES Modules), Node.js, stdio transport (JSON-RPC 2.0).

File Map

src/lib/server.js                ← ALL server logic: tool definitions, state, helpers, cleanup
src/lib/accessibility-snapshot.js ← Browser-side JS injected via executeScript to build accessibility tree
bin/mcp-selenium.js              ← CLI entry point, spawns server.js as child process
test/mcp-client.mjs              ← Reusable MCP test client (JSON-RPC over stdio)
test/*.test.mjs                  ← Tests grouped by feature
test/fixtures/*.html             ← HTML files loaded via file:// URLs in tests

Architecture

Server logic lives in server.js, with browser-injected scripts in separate files. 18 tools, 2 resources.

State is a module-level object:

const state = {
    drivers: new Map(),    // sessionId → WebDriver instance
    currentSession: null,  // active session ID
    bidi: new Map()        // sessionId → { available, consoleLogs, pageErrors, networkLogs }
};

Related operations are consolidated into single tools with action enum parameters (interact, window, frame, alert, diagnostics). This is intentional — it reduces context window token cost for LLM consumers.

BiDi (WebDriver BiDi) is auto-enabled on start_browser for passive capture of console logs, JS errors, and network activity. Modules are dynamically imported — if unavailable, BiDi is silently skipped.

Conventions

  • ES Modulesimport/export, not require.
  • Zod schemas — tool inputs defined with Zod, auto-converted to JSON Schema by MCP SDK.
  • Error pattern — every handler: try/catch, return { content: [...], isError: true } on failure.
  • No console.log() — stdio transport. Use console.error() for debug output.
  • send_keys clears first — calls element.clear() before typing. Intentional.
  • MCP compliance — before modifying server behavior, read the MCP spec. Don't violate it.

Read the full file on GitHub · 85 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 85 lines · 948 tokens per session scan A 72ebe56b99f3

Subscribe to this mod's changes

mcpselenium AGENTS.md is an instructions file published in the GitHub repository navin2031992/mcpselenium (0 stars, last pushed 1mo ago), licensed MIT. It adds 948 tokens to every session, about $0.0047 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to mcp-selenium AGENTS.md, differing in 0 lines, and is treated as a copy.