io.github.CloudCorpRecords/headlessstage
Browser automation: navigate, click, fill, screenshot and evaluate in a headless browser.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
@reneturcios/headlessstageclaude mcp add headlessstage -- npx -y @reneturcios/headlessstage@0.1.0 mcp
{
"mcpServers": {
"headlessstage": {
"command": "npx",
"args": [
"-y",
"@reneturcios/headlessstage@0.1.0",
"mcp"
]
}
}
}
ghcr.io/cloudcorprecords/headlessstage:0.1.0claude mcp add headlessstage -- docker run -i --rm ghcr.io/cloudcorprecords/headlessstage:0.1.0 mcp
{
"mcpServers": {
"headlessstage": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/cloudcorprecords/headlessstage:0.1.0",
"mcp"
]
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
headlessstage
Browser automation through a headless browser page, as a CLI and a stdio MCP server in one bin. Navigate to a URL, click, hover, fill and select form elements, take named screenshots and evaluate JavaScript in the page.
The browser itself sits behind an injectable executor interface
(BrowserExecutor in src/types.ts). This package bundles no
browser and downloads none: with no executor configured, browser
commands fail with a clear "Browser unavailable" error. Deployments
inject a Puppeteer-compatible executor to drive a real browser.
Launch options that weaken browser security (--no-sandbox,
--disable-web-security, --allow-insecure-localhost) are
rejected unless a call explicitly passes allowDangerous: true.
Install
npx -y @reneturcios/headlessstage mcp
CLI
headlessstage mcp # stdio MCP server
headlessstage navigate <url>
headlessstage screenshot <name> [selector]
headlessstage click <selector>
headlessstage fill <selector> <value>
headlessstage evaluate <script>
headlessstage --version
Exit codes: 0 success, 1 browser error, 2 usage error.
MCP tools
| Tool | Purpose |
|---|---|
puppeteer_navigate | Navigate to any URL in the browser |
puppeteer_screenshot | Capture screenshots of the entire page or specific elements |
puppeteer_click | Click elements on the page |
puppeteer_hover | Hover elements on the page |
puppeteer_fill | Fill out input fields |
puppeteer_select | Select an element with a SELECT tag |
puppeteer_evaluate | Execute JavaScript in the browser console |
MCP client config:
{
"mcpServers": {
"headlessstage": {
"command": "npx",
"args": ["-y", "@reneturcios/headlessstage", "mcp"]
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/headlessstage # MCP server
docker run --rm ghcr.io/cloudcorprecords/headlessstage --version
Development
npm install
npm run build
npm test
MIT license.
Frequently asked questions
What is io.github.CloudCorpRecords/headlessstage?
Browser automation: navigate, click, fill, screenshot and evaluate in a headless browser.
How do I install io.github.CloudCorpRecords/headlessstage?
It runs on your machine. In Claude Code: claude mcp add headlessstage -- npx -y @reneturcios/headlessstage@0.1.0 mcp. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.CloudCorpRecords/headlessstage need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is io.github.CloudCorpRecords/headlessstage open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.CloudCorpRecords/headlessstage?
It is published by CloudCorpRecords. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.