blazickjp

web-browser-mcp-server

Community blazickjp
Updated

Transform your AI applications with advanced web browsing capabilities through this Model Context Protocol (MCP) server

Twitter Followsmithery badgePython VersionLicense: MITPyPI DownloadsPyPI Version

✨ 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.

🀝 Contribute β€’πŸ“ Report Bug

✨ 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 claude

Installing Manually

Install using uv:

uv tool install web-browser-mcp-server

For 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.

Made with ❀️ by the Pear Labs Team

MCP Server Β· Populars

MCP Server Β· New

    Bevel-Software

    hexis

    Git-backed skills, tools & context for AI agents

    Community Bevel-Software
    jonashertner

    OpenCaseLaw

    Open Swiss legal corpus + MCP server: 1M+ court decisions (1875–today), 21k laws, 10M-edge citation graph, 42 MCP tools. CC0 data, MIT code. Live at mcp.opencaselaw.ch

    Community jonashertner
    SystemCraftsman

    Strimzi Kafka CLI

    Command Line Interface for the Strimzi Kafka Operator

    Community SystemCraftsman
    DROOdotFOO

    Raxol

    Write one app, render it to a terminal, a browser, or as agent tools. The terminal for your Gundam.

    Community DROOdotFOO
    morluto

    REA: Reverse Engineer Anything

    Reverse engineer anything with agents, from app behavior down to native binaries.

    Community morluto