ChromeDP
Generate PDFs from HTML content or URLs using a headless Chrome/Chromium browser.
chromedp-mcp
A Model Context Protocol (MCP) server that provides browser automation capabilities using chromedp. This server enables AI assistants to interact with web pages, manage browser instances, and perform various web automation tasks.
⚠️ Development Status
This project is currently under development. Some features may be incomplete, unstable, or contain bugs. Use with caution and please report any issues you encounter.
Features
- Multi-instance Chrome Management: Create and manage multiple Chrome browser instances with extensive configuration options (headless mode, security settings, performance optimization)
- Complete Page Navigation: Navigate to URLs, browser history navigation (back/forward)
- Element Interaction: Find, click, and interact with web page elements using various selectors
- Form Operations: Input text, set values directly
- Cookie Management: Set and manage browser cookies for session handling
- File Operations: Download files and images from web pages
- PDF Generation: Convert web pages or HTML content to PDF documents
- Keyboard Simulation: Send keyboard events, key combinations, and modifier keys with comprehensive key support
- Screen Capture: Take screenshots of web pages for visual analysis
- DOM Tree Extraction: Get clean DOM structures without scripts/styles for analysis
LLM Decision Support
chromedp-mcp provides web page information to LLMs, enabling AI to make decisions:
Visual Information
Provided through screenshot tool:
- Complete page screenshots: Actual visual representation of web pages including layout, colors, images
- Element positioning: LLMs can see exact positions and appearance of buttons, links, forms and other elements
- Page state identification: Detect loading states, popups, error messages and other visual indicators
- Responsive layout understanding: Comprehend page presentation across different viewport sizes
Structured Information
Provided through DOM-related tools:
- Clean DOM structure (
get-all-elements): Pure HTML structure with scripts and styles removed - Specific element details (
select-element): Element tree structure at specified depth - Text content extraction (
get-element-withtext): Element information containing specific text - Element attribute data: ID, class, data-* and other attribute values
Available Tools
For detailed tool specifications,and parameters, see Tools Specification
Instance Management
create-chrome-instance- Create a new Chrome browser instance with extensive configuration options (headless mode, security settings, performance options)close- Close a specific Chrome browser instance
Page Navigation
navigate- Navigate to a specified URL and return clean DOM structurenavigate-back- Navigate to previous page in browser historynavigate-forward- Navigate to next page in browser history
Element Operations
get-element-withtext- Find and retrieve information about a specific element with text contentget-all-elements- Get all elements of current page as clean DOM tree structureselect-element- Select element by CSS selector and return clean DOM structure at specified depthclick-element- Click on an element with support for different click types (left, right, double)
Visual Information Access
screenshot- Capture screenshots of web pages for visual analysis and layout understanding
Input Operations
send-key- Send keyboard input to specified elementsset-value- Directly set the value of form elementskey-event- Send specific keyboard events and combinations with modifier keys
Cookie Management
set-cookie- Set HTTP cookies with full control over domain, path, security, and expiration settings
File Operations
download-file- Download files by clicking download links or buttonsdownload_image- Download images from URL or by selector
Document Generation
generate_pdf- Generate PDF from HTML content or URL
Other
tips- Important usage tips and best practices for Chrome automation tools (recommended to check first)
Requirements
- Chrome/Chromium Browser: Must be installed and accessible in system PATH
- Go: Version 1.19 or higher for building from source
Environment Configuration
The following environment variables can be configured for Chrome management:
| Variable | Description | Default |
|---|---|---|
CHROME_MAXIMUM_INSTANCE | Maximum concurrent Chrome instances | 5 |
CHROME_TTL | Instance time-to-live in minutes | 15 |
CHROME_EXE_TIMEOUT | Operation timeout in seconds | 300 |
These can be configured through your MCP client configuration or environment variables.
Setup
1. Clone the repository:
git clone https://github.com/KePatrick/chromedp-mcp.git
cd chromedp-mcp
2. Build the project:
Windows
go build -o chromedp-mcp.exe .\cmd\chromedp-mcp\main.go
Linux/MacOs
go build -o chromedp-mcp ./cmd/chromedp-mcp/main.go
3. MCP Client Configuration
Configure your MCP-compatible client to use this server:
Basic Configuration:
{
"mcpServers": {
"chromedp-mcp": {
"command": "/path/to/chromedp-mcp",
"args": []
}
}
}
With Environment Variables:
{
"mcpServers": {
"chromedp-mcp": {
"command": "/path/to/chromedp-mcp",
"args": [],
"env": {
"CHROME_MAXIMUM_INSTANCE": "10",
"CHROME_TTL": "30",
"CHROME_EXE_TIMEOUT": "600"
}
}
}
}
Important Notes
- Always close instances when done to free resources
- Respect website terms of service and robots.txt
- Some websites may have anti-automation measures
関連サーバー
Kone.vc
スポンサーMonetize your AI agent with contextual product recommendations
Morion
Local macOS notebook that is also an MCP server. Any AI assistant — Claude, Cursor, ChatGPT, Cline, Zed — reads and writes your notes. 22 tools. Free, local, private.
Tally MCP Server
Provides AI assistants with secure access to Tally form management capabilities.
MCP Documentation Service
A service for reading, writing, and managing markdown documentation with frontmatter metadata.
mcp-nfse-nacional
MCP Server to query NFSe on the Brazilian national portal (nfse.gov.br). Search for invoices, download XMLs and PDFs directly from your AI agent.
Follow Plan
Track and manage AI implementation plans.
Linear MCP Server
Interact with the Linear API to manage issues, projects, and teams programmatically.
Google Workspace
Interact with Google Workspace services like Gmail and Google Calendar.
Bear
A server for interacting with the Bear note-taking application.
Xeams MCP Server
Validate email address and check that status of a previously sent email
Google Workspace
Manage Gmail, Calendar, Drive, and Contacts through Google Workspace APIs using OAuth 2.0.