MCP server + Chrome extension · MIT
20 MCP tools that read and act on the tabs you are already logged into. Trusted input events, so React and Vue forms accept them. Nothing leaves localhost.
> fill this application with my details, then show me the form before submitting ⏺ alien_context() └ Active tab: Senior Frontend Engineer · Alan https://jobs.lever.co/alan/frontend/apply ⏺ alien_find_element(selector: "form input") └ Found 3 element(s): [0] <input> name="email" (412,286 320x40) [1] <input> name="firstName" (412,352 320x40) [2] <input> name="linkedin" (412,418 320x40) ⏺ alien_form_input(selector: "input[name=email]", value: "…") └ Filled <input> name="email" type="email" ⏺ alien_screenshot() └ Screenshot: 1280x800 · jobs.lever.co Form filled. Nothing submitted — the submit button is yours to click.
Apply for Senior Frontend Engineer
Submit applicationAlienMcp never clicks this. You do.
Install
Prefer to build it yourself? The source is in packages/chrome-extension: npm run build, then Load unpacked on dist/.
git clone https://github.com/YasserLoukniti/AlienMcp.git
cd AlienMcp/packages/mcp-server
npm install && npm run build
claude mcp add alienMcp --transport stdio -s user \
-- node /path/to/AlienMcp/packages/mcp-server/dist/index.js
Any MCP client works. Cursor and VS Code take the same stdio command in their own config.
Click the AlienMcp icon, then Add this tab. That tab joins a Chrome tab group and becomes reachable. Tabs outside the group stay invisible to every tool.
20 tools
Clicks and keystrokes go through the Chrome DevTools Protocol, so they arrive as
trusted events. Forms built on React, Vue or Angular register them exactly as if
you had typed them, which synthetic dispatchEvent automation cannot do.
Runs on your machine
outbound connections: none
connect-src to ws://localhost. It cannot reach anywhere else, by construction.