
mcp browse
An MCP Server that gives the LLM some basic browsing capabilities
Repository Info
About This Server
An MCP Server that gives the LLM some basic browsing capabilities
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
MCP-Browse
A browser control protocol for automation and e-commerce site interaction.
Overview
MCP-Browse provides a clean, streamlined interface for controlling browser interactions through a remote protocol. It's particularly focused on common e-commerce site interactions like:
- Navigation to pages
- Clicking on elements
- Entering form data
- Downloading images and files
- Executing JavaScript
All operations use protocol buffers for efficient, typed communication.
Protocol Design
The protocol is designed around "gestures" that represent user interactions with a browser:
- Navigate - Visit a URL with optional redirect handling
- Click - Click on elements using ID or CSS selectors
- Input - Enter values in form fields (text, checkboxes, select dropdowns)
- Download - Retrieve images or files
- ExecuteScript - Run JavaScript on the page and get results
Browser gesture operations (Navigate, Click, Input) return streamed responses that include:
- Zero or more redirect events
- Page content or error information
- A completion event
Utility operations (Download, ExecuteScript) return a single response with the requested data.
Example Usage
// Create a client
// client := NewMCPBrowserServiceClient(...)
// Navigate to a product page
navigateReq := apiv1.NavigateRequest_builder{
Url: stringPtr("https://example-shop.com/products"),
AllowRedirects: boolPtr(true),
}.Build()
// Process the response stream
// stream, err := client.Navigate(context.Background(), navigateReq)
// handleResponseStream(stream)
// Click on a product
clickReq := apiv1.ClickRequest_builder{
CssSelector: stringPtr(".product-item"),
}.Build()
// Process the response stream
// stream, err = client.Click(context.Background(), clickReq)
// handleResponseStream(stream)
// Add to cart
clickReq = apiv1.ClickRequest_builder{
CssSelector: stringPtr(".add-to-cart-button"),
}.Build()
// Process the response stream
// stream, err = client.Click(context.Background(), clickReq)
// handleResponseStream(stream)
Building and Running
Prerequisites
- Go 1.18+
- Protocol Buffers compiler
Setup
- Clone the repository
- Install dependencies:
go mod download - Generate Protocol Buffer code:
buf generate
Run Tests
go test ./...
License
MIT License
Quick Start
Clone the repository
git clone https://github.com/tylergannon/mcp-browseInstall dependencies
cd mcp-browse
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.