argus
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@argusTake a screenshot of the current page"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Argus connects directly to Chrome via the Chrome DevTools Protocol and exposes browser debugging as MCP tools - no Puppeteer, no Playwright, no browser abstraction layer. Spawn Chrome, attach to tabs, record console output, intercept network requests, inject mocks, and capture screenshots, all from your MCP client.
The name comes from Argus Panoptes - the 100-eyed giant of Greek mythology who could watch everything at once and never fully slept. That's the goal: total visibility into what the browser is doing.
Motivation
Argus came about as part of an ongoing exploration into leveraging agents to reproduce reported issues as well as "manually" debug/record them on the fly. As a result you can expect to see bugs in Argus itself as well as plenty room for improvement and growth over time.
Related MCP server: Puppeteer Debugger MCP Server
Features
Console recording — capture
console.log/warn/errorand unhandled exceptions with stack tracesScreenshot capture — viewport, full-page, or clipped region, returned as base64 PNG/JPEG
Network recording — record every request and response including body, headers, timing, and errors
Network mocking — intercept requests by glob pattern and return custom responses, zero page reload required
Multi-tab — attach to any number of tabs simultaneously, each with independent recording state
No dependencies — direct WebSocket connection to Chrome's debug port, no browser driver needed
Injectable overlay — floating status widget injected into every inspected page showing live counts
Installation
From npm (recommended)
# Install globally
npm install -g @jmsa/argus-mcp
argus-mcp
# Or run without installing
npx @jmsa/argus-mcpFrom source
git clone https://github.com/Jmsa/argus
cd argus
npm install
npm run devChrome Canary opens automatically on startup with the Argus welcome page. Connect your MCP client to the stdio transport and start using the tools.
Requirements
Node ≥ 18
Google Chrome or Chrome Canary (macOS, Linux, or Windows)
MCP Client Configuration
Claude Code — run this once:
# npm package (recommended)
claude mcp add --transport stdio argus -- argus-mcp
# from source
claude mcp add --transport stdio argus -- npm run devClaude Desktop — add to claude_desktop_config.json:
{
"mcpServers": {
"argus": {
"type": "stdio",
"command": "argus-mcp"
}
}
}If running from source instead, use
"command": "npm"with"args": ["run", "dev"]and set"cwd"to the project root.
Auto-Launch Behavior
By default, Argus does not automatically launch Chrome when a Claude session starts. Use the browser_launch tool to start Chrome when you need it.
First-run experience
The first time Claude starts with Argus installed, Chrome opens once automatically so you can verify everything is working. A message on the welcome page explains what's happening. After that first session, auto-launch is off unless you enable it.
The auto-launch toggle
The welcome page always shows a Yes / No toggle for auto-launch:
No (default) — Chrome does not open on Claude start; call
browser_launchmanuallyYes — Chrome and the welcome page open automatically at the start of every Claude session
The toggle takes effect immediately and persists across sessions. Your preference is stored in ~/.argus/config.json and can also be edited manually:
{ "autoLaunch": true }CI / scripted environments
Set ARGUS_NO_LAUNCH=1 to force-skip Chrome launch regardless of the config file. This is useful in CI pipelines or automated environments where a display isn't available.
Tools
Argus exposes 32 tools across eight groups.
Browser
Tool | Description |
| Spawn a new Chrome instance with remote debugging |
| Attach to an already-running Chrome via WebSocket URL |
| Disconnect (browser stays open) |
| Check connection state and active tab count |
Tabs
Tool | Description |
| List all open page tabs |
| Open a new tab and navigate to a URL |
| Navigate an existing tab to a new URL |
| Close a tab by |
| Capture a screenshot (viewport, full-page, or clipped) |
Console
Tool | Description |
| Begin recording console output and exceptions |
| Stop recording |
| Retrieve logs, filterable by type and text |
| Discard captured log entries |
Network Recording
Tool | Description |
| Enable network capture (requests, responses, bodies) |
| Disable network capture |
| Query captured requests (filter by URL, method, status, error) |
| Clear the request history for a tab |
Network Mocks
Tool | Description |
| Intercept requests matching a glob and return a custom response |
| Remove a mock rule by ID |
| List active mock rules for a tab |
| Remove all mocks and disable interception |
Page
Tool | Description |
| Execute JavaScript and return the result |
| Reload the tab (optionally bypassing cache) |
| Get the current URL and title of a tab |
DOM
Tool | Description |
| Query the first element matching a CSS selector and return its properties |
| Query all elements matching a CSS selector |
| Click the first element matching a CSS selector (scrolls into view first) |
| Set an input's value and dispatch input/change events (React/Vue safe) |
| Get the current value of an input element |
| Wait for an element to appear in the DOM (polls every 100ms) |
Banner
Tool | Description |
| Push state updates to the Argus banner overlay (recording indicator, counts) |
| Retrieve screenshots captured via the banner Screenshot button |
Skills
Skills are Claude Code workflows that invoke Argus tools automatically. Install the plugin to get them as slash commands:
/plugin install Jmsa/argusSkill | Command | Description |
| Capture a complete debugging snapshot — console, network, screenshot | |
| Reproduce a bug using mocks to isolate frontend vs API | |
| Investigate failed requests, slow responses, and mock verification |
Documentation
Architecture — project structure and how the pieces connect
Configuration — Chrome path, port, headless mode, and custom flags
Network Mocking — glob patterns, mock priority, and request flow
How It Works
MCP Client (Claude, Inspector, etc.)
│ stdio
▼
Argus MCP Server
│ CDP over WebSocket
▼
Chrome / Chrome Canary
│ per-tab CDPSession
▼
domains: console · screenshot · network · uiChrome is spawned as a child process. Argus listens to its stderr for the DevTools listening on ws://... line to get the exact WebSocket URL, then connects. Each tab gets its own CDPSession (multiplexed over a single WebSocket connection) with independent domain state.
Development
npm run dev # start with tsx (no build step)
npm run build # compile to dist/
npm run typecheck # type-check without emittingChrome profile data is stored at ~/.argus/chrome-profile so Chrome doesn't reinitialise on every restart.
Contributing
Contributions are welcome. Argus is an active exploration project, so there's plenty of room to improve.
Before opening a PR:
Fork the repo and create a branch from
mainRun
npm run typecheck— PRs must pass type checkingTest your changes against a live browser session
Keep commits focused; one logical change per PR
Good areas to contribute:
New CDP domain wrappers (e.g. Performance, Accessibility)
Additional skills / slash commands
Bug reports with reproduction steps
Documentation improvements
Open an issue first for large changes so we can align on approach before you invest time in implementation.
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Jmsa/argus'
If you have feedback or need assistance with the MCP directory API, please join our Discord server