
MCP AOAI Web Browsing (browser-navigator)
Minimal MCP server that drives a web browser via Playwright, with an Azure OpenAI / OpenAI client bridge.
Add to your client
Copy the config for your MCP client and paste it into its config file.
pip install uv && uv syncPaste into ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"mcp-aoai-web-browsing-browser-navigator": {
"command": "uv",
"args": [
"run",
"fastmcp",
"run",
"./server/browser_navigator_server.py:app"
],
"env": {
"AZURE_OPEN_AI_ENDPOINT": "...",
"AZURE_OPEN_AI_API_KEY": "...",
"AZURE_OPEN_AI_DEPLOYMENT_MODEL": "...",
"AZURE_OPEN_AI_API_VERSION": "..."
}
}
}
}Step-by-step guides: Add to Claude Desktop · Add to Cursor · Add to Windsurf
Before you start
- Python with uv (pip install uv, then uv sync)
- Playwright browser(s) installed
- Azure OpenAI credentials (AZURE_OPEN_AI_ENDPOINT, AZURE_OPEN_AI_API_KEY, AZURE_OPEN_AI_DEPLOYMENT_MODEL, AZURE_OPEN_AI_API_VERSION) — or standard OpenAI (OPENAI_API_KEY, OPENAI_MODEL)
About MCP AOAI Web Browsing (browser-navigator)
A minimal MCP server/client sample that lets an LLM control a web browser through Playwright. The FastMCP server exposes navigation, interaction, and screenshot tools; a bundled client bridge converts these tools to OpenAI function-calling format for use with Azure OpenAI or OpenAI, and can also be driven by external MCP clients such as Claude Desktop, Claude Code, and VS Code over stdio.
Tools & capabilities (9)
playwright_navigateNavigate to a URL (supports timeout and wait_until options).
playwright_screenshotTake a screenshot of the current page or a specific element.
playwright_clickClick an element on the page by CSS selector.
playwright_fillFill out an input field identified by a CSS selector.
playwright_selectSelect an option in a <select> element by CSS selector and value.
playwright_hoverHover over an element on the page by CSS selector.
playwright_evaluateExecute arbitrary JavaScript in the browser console.
extract_selector_by_page_contentUse the LLM to infer a CSS selector that best matches a user request from the current page's HTML content.
read_all_screenshotsLong-running tool that reads all screenshots from a list of file names, reporting progress.
What this server can do
MCP AOAI Web Browsing (browser-navigator) provides tools for these capabilities — tap one to see every MCP server that does the same:
When to use it
- Letting an AI assistant navigate websites and click/fill forms to complete web tasks
- Automated end-to-end web testing driven by natural-language instructions
- Capturing screenshots of pages or specific elements during an agent workflow
- Learning how to bridge an MCP server to OpenAI/Azure OpenAI function calling
Security notes
Requires Azure OpenAI (or OpenAI) credentials supplied via environment variables (e.g. AZURE_OPEN_AI_API_KEY / OPENAI_API_KEY). Keep these out of source control — rename .env.template to .env or inject them via the client's env block. The playwright_evaluate tool executes arbitrary JavaScript in the controlled browser, so only point it at trusted pages.
MCP AOAI Web Browsing (browser-navigator) FAQ
Does it work with standard OpenAI, or only Azure OpenAI?
Both. The default config targets Azure OpenAI, but the client bridge also supports standard OpenAI via get_openai_llm_config() and OPENAI_API_KEY / OPENAI_MODEL environment variables.
Can I use it with Claude Desktop or Claude Code instead of the bundled client?
Yes. The README provides mcpServers config for Claude Desktop (claude_desktop_config.json) and Claude Code (.claude/mcp.json), plus a VS Code (.vscode/mcp.json) variant, all launching the server over stdio with uv run fastmcp.
Why does it require uv specifically?
The author notes that during the December 2024 development phase the MCP CLI did not yet fully support pip or poetry, so the project is initialized and run with uv.
Is this an official Microsoft or OpenAI project?
No. It is an independent, minimal sample implementation by kimtth, licensed MIT. It wraps Playwright (Microsoft) and Azure OpenAI/OpenAI but is not maintained by those vendors.
Alternatives to MCP AOAI Web Browsing (browser-navigator)
Compare all alternatives →Automate your existing browser with AI using your real profile, logged-in sessions, and stealth fingerprint.
All-in-one web access MCP — Web Unlocker, SERP, Scraper API, and a cloud Scraping Browser.
macOS screen capture, AI visual analysis, and full GUI automation for AI agents.
Compare MCP AOAI Web Browsing (browser-navigator) with: