frontend-mcp
Enables frontend navigation and browser automation through a deterministic MCP server, integrating Browser Use and optional code graph hints for coding agents.
README
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
↓
Browser
CRG is integrated behind ICodeGraph, so it can be replaced later by another backend such as FrontendInteractionGraph without changing Browser Use orchestration.
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 |
|---|---|
frontend-perception-engine |
pip install frontend-perception-engine |
frontend-mcp (alias) |
pip install frontend-mcp |
Recommended (quiet output + next steps):
uvx --from frontend-perception-engine frontend-perception-install
Or the shorter alias name:
uvx --from frontend-mcp frontend-mcp-install
With Chromium for Browser Use:
uvx --from frontend-perception-engine frontend-perception-install --with-browser
Development install from this repo:
python -m navigation.cli.install --editable .
Or classic pip:
pip install frontend-perception-engine
Run MCP server
Using module entrypoint:
python -m navigation.mcp
Using script entrypoint:
frontend-perception-mcp
Using uvx (no local install in current environment):
uvx --from frontend-perception-engine frontend-perception-mcp
# or
uvx --from frontend-mcp frontend-mcp
Cursor 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 dev - Default URL used by tests/tools:
http://localhost:5173 - No 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 watch - API 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_graph - Search (hybrid semantic + keyword):
semantic_search_nodes - Blast radius / route impact:
get_impact_radius - Traversal/path-like exploration:
traverse_graph_func - Stats/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 dev
- Configure 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:5173
- Install 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.py
Expected behavior:
- Browser Use execution starts.
- Optional code graph query is attempted.
- Browser Use continues regardless of query success.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。