frontend-mcp
Allows running a Browser Use agent with optional code graph hints using Amazon Bedrock Nova models for browser automation.
Click on "Deploy 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., "@frontend-mcpopen the settings page and check the theme option"
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.
Frontend Perception Engine (CRG as Optional Library)
This project implements a frontend navigation layer where:
Browser Use stays the browser automation engine.
Code Review Graph (CRG) is used only as an optional knowledge source.
Browser execution continues even when CRG is unavailable.
Architecture
Cursor / Claude
↓
Our MCP
↓
Frontend Navigation Layer
↓
Browser Use
↓
BrowserCRG is integrated behind ICodeGraph, so it can be replaced later by another backend such as FrontendInteractionGraph without changing Browser Use orchestration.
Related MCP server: hronaut
Dependency Integration
CRG is integrated as a dependency (not forked, not modified):
code-review-graph>=2.3.6browser-use>=0.13.3
Install:
pip install -e .Frontend Perception MCP (No LLM in Server)
The MCP server is deterministic runtime only (browser observation + actions + verify).
Your coding agent (Cursor/Claude/Codex) remains the brain.
Install
Both PyPI names install the same MCP server:
Package | Install / upgrade |
|
|
|
|
Use --upgrade when a version is already installed — plain pip install may leave an older release in place.
Do not mix PyPI installs with pip install -e . in this repo; editable installs can leave broken metadata that blocks upgrades. Use one or the other.
Recommended (quiet output + next steps):
uvx --from frontend-perception-engine frontend-perception-installOr the shorter alias name:
uvx --from frontend-mcp frontend-mcp-installWith Chromium for Browser Use:
uvx --from frontend-perception-engine frontend-perception-install --with-browserDevelopment install from this repo:
python -m navigation.cli.install --editable .Or classic pip:
pip install frontend-perception-engineRun MCP server
Using module entrypoint:
python -m navigation.mcpUsing script entrypoint:
frontend-perception-mcpUsing uvx (no local install in current environment):
uvx --from frontend-perception-engine frontend-perception-mcp
# or
uvx --from frontend-mcp frontend-mcpCursor MCP config
{
"mcpServers": {
"frontend-perception": {
"command": "python",
"args": ["-m", "navigation.mcp"],
"env": {
"PYTHONPATH": "C:/Users/usman/Projects/frontend-perception-engine/src"
}
}
}
}Runtime prerequisites
Start the sandbox app:
cd sandbox && npm run devDefault URL used by tests/tools:
http://localhost:5173No API keys are required to run the MCP path itself
Platform documentation
Architecture, roadmap, tool reference, and feature subsystem docs: docs/README.md.
CRG Documentation and Public API Notes
The integration uses CRG public tool functions from:
code_review_graph.tools.build.build_or_update_graphcode_review_graph.tools.query.query_graphcode_review_graph.tools.query.semantic_search_nodescode_review_graph.tools.query.get_impact_radiuscode_review_graph.tools.query.list_graph_statscode_review_graph.tools.query.traverse_graph_func
Graph lifecycle
Initialize graph (incremental/minimal):
build_or_update_graph(full_rebuild=False, postprocess="minimal")Refresh graph (incremental):
build_or_update_graph(full_rebuild=False)Rebuild graph (full):
build_or_update_graph(full_rebuild=True)
Incremental indexing
CRG incremental path is handled by incremental_update under the hood and can detect changed files from VCS (base=HEAD~1 by default).
Watch mode
CRG supports continuous updates via:
CLI:
code-review-graph watchAPI internals:
code_review_graph.incremental.watchandstart_watch_thread
This wrapper does not require watch mode, but is compatible with repositories kept fresh by CRG watch/daemon.
Querying
Pattern queries (neighbors/file relationships):
query_graphSearch (hybrid semantic + keyword):
semantic_search_nodesBlast radius / route impact:
get_impact_radiusTraversal/path-like exploration:
traverse_graph_funcStats/health:
list_graph_stats
Wrapper Layer
All CRG coupling is isolated in:
src/navigation/codeGraph/
Public contract:
initialize()refresh()rebuild()search()shortest_path()get_neighbors()get_component()get_file()get_route()query()
Future-oriented methods are already represented on ICodeGraph:
findNavigationHint(...)style equivalent viafind_navigation_hint(...)find_relevant_components(...)find_likely_route(...)find_related_files(...)find_button_candidates(...)find_component_hierarchy(...)find_entry_point(...)
Browser Use Integration
BrowserUseNavigator provides a lightweight dry-run timeline for tests.
PerceptionAgentRunner runs a real Browser Use agent with optional graph hints injected via extend_system_message. Graph output is never a mandatory stage — if CRG or AWS credentials are missing, the agent either skips hints or reports a clear error.
Live agent (Bedrock Nova)
Start the sandbox:
cd sandbox && npm run devConfigure AWS (copy
.env.example→.env):
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
AWS_REGION=us-east-1
BEDROCK_MODEL=amazon.nova-pro-v1:0
SANDBOX_URL=http://localhost:5173Install AWS extra and run:
pip install -e ".[aws]"
python src/run_agent.py --task "Add Pulse Watch to cart and complete checkout"Dry-run (graph hints only, no browser):
python src/run_agent.py --dry-run --task "Log in as admin and open admin report"Flags:
--no-graph— disable CRG hints--headless— headless browser--max-steps 25— step limit--url http://localhost:5174— custom sandbox URL
Demo
Run:
python src/demo.pyExpected behavior:
Browser Use execution starts.
Optional code graph query is attempted.
Browser Use continues regardless of query success.
This server cannot be deployed
Maintenance
Related MCP Connectors
Control a real browser from AI agents: navigate, click, type, screenshot, read the page.
Official Browserless MCP server: browser automation, scraping, screenshots and PDFs for AI agents.
Stealth web browser for agents: search, fetch, click, download and type in persistent MCP sessions.
Turn any public website into an MCP server for agents to search, read and navigate.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables browser automation through the MCP protocol, allowing AI agents to control a real browser using accessibility snapshots and natural language commands.-
- FlicenseNot gradedqualityAmaintenanceEnables AI agents to control a persistent local browser with live tabs, navigation, interaction, inspection, and state management through MCP.6-

orchords-web-pilotofficial
FlicenseAqualityCmaintenanceEnables coding agents to drive a real Playwright-backed browser session, navigating, observing, interacting, and capturing proof on web pages via MCP tools across stdio and Streamable HTTP transports.152-- AlicenseNot gradedqualityBmaintenanceEnables AI coding agents to control and inspect a live Chrome browser via MCP, including performance tracing, network and console debugging, screenshots, and reliable Puppeteer-based automation.1,737,496 npmApache 2.0