web-browser-mcp-server
A Minimum Control Program (MCP) server implementation for web browsing capabilities using BeautifulSoup4
Documentation
✨ Features
> 🌐 Enable AI assistants to browse and extract content from the web through a simple MCP interface.
The Web Browser MCP Server provides AI models with the ability to browse websites, extract content, and understand web pages through the Message Control Protocol (MCP). It enables smart content extraction with CSS selectors and robust error handling.
✨ Core Features
- 🎯 Smart Content Extraction: Target exactly what you need with CSS selectors
- ⚡ Lightning Fast: Built with async processing for optimal performance
- 📊 Rich Metadata: Capture titles, links, and structured content
- 🛡️ Robust & Reliable: Built-in error handling and timeout management
- 🌍 Cross-Platform: Works everywhere Python runs
🚀 Quick Start
Installing via Smithery
To install Web Browser Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install web-browser-mcp-server --client claudeInstalling Manually
Install using uv:
uv tool install web-browser-mcp-serverFor development:
# Clone and set up development environment
git clone https://github.com/blazickjp/web-browser-mcp-server.git
cd web-browser-mcp-server
# Create and activate virtual environment
uv venv
source .venv/bin/activate
# Install with test dependencies
uv pip install -e ".[test]"🔌 MCP Integration
Add this configuration to your MCP client config file:
{
"mcpServers": {
"web-browser-mcp-server": {
"command": "uv",
"args": [
"tool",
"run",
"web-browser-mcp-server"
],
"env": {
"REQUEST_TIMEOUT": "30"
}
}
}
}For Development:
{
"mcpServers": {
"web-browser-mcp-server": {
"command": "uv",
"args": [
"--directory",
"path/to/cloned/web-browser-mcp-server",
"run",
"web-browser-mcp-server"
],
"env": {
"REQUEST_TIMEOUT": "30"
}
}
}
}💡 Available Tools
The server provides a powerful web browsing tool:
browse_webpage
Browse and extract content from web pages with optional CSS selectors:
# Basic webpage fetch
result = await call_tool("browse_webpage", {
"url": "https://example.com"
})
# Target specific content with CSS selectors
result = await call_tool("browse_webpage", {
"url": "https://example.com",
"selectors": {
"headlines": "h1, h2",
"main_content": "article.content",
"navigation": "nav a"
}
})⚙️ Configuration
Configure through environment variables:
| Variable | Purpose | Default |
|---|---|---|
| `REQUEST_TIMEOUT` | Webpage request timeout in seconds | 30 |
🧪 Testing
Run the test suite:
python -m pytest📄 License
Released under the MIT License. See the LICENSE file for details.
Frequently asked questions
What is web-browser-mcp-server?
web-browser-mcp-server is A Minimum Control Program (MCP) server implementation for web browsing capabilities using BeautifulSoup4
How do I install web-browser-mcp-server?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is web-browser-mcp-server open source?
Yes — it is hosted on GitHub at https://github.com/blazickjp/web-browser-mcp-server and has 42 stars.
Related MCP tools
Browse the web, directly from Cursor etc. Built for the Model Context Protocol to enhance AI capabilities. Python-based implementation.
🙌 OpenHands: Code Less, Make More for the Model Context Protocol. Enhance AI assistants with powerful integrations. Python-based implementation.
Universal memory layer for AI Agents; Announcing OpenMemory MCP - local and secure memory management. Python-based implementation.
基于大模型搭建的聊天机器人,同时支持 微信公众号、企业微信应用、飞书、钉钉 等接入,可选择ChatGPT/Claude/DeepSeek/文心一言/讯飞星火/通义千问/ Gemini/GLM-4/Kimi/LinkAI,能处理文本、语音和图片,访问操作系统和互联网,支持基于自有知识库进行定制企业智能客服。
An LLM agent that conducts deep research (local and web) on any given topic and generates a long report with citations. Built for the Model Context Protocol to
🚀 The fast, Pythonic way to build MCP servers and clients Trusted by 19900+ developers. Trusted by 19900+ developers. Trusted by 19900+ developers.
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP