spring-ai-chrome
MCP server from qoxogus/spring-ai-chrome-mcp-server
claude mcp add --transport stdio qoxogus-spring-ai-chrome-mcp-server {JAVA_PATH} -Dspring.ai.mcp.server.stdio=true -jar {JAR_PATH}How to use
Spring AI Chrome MCP Server enables programmatic control of a Chrome browser instance via a set of MCP tools. It exposes actions such as opening a browser, navigating to URLs, performing Google searches, switching tabs, taking screenshots, extracting page text, and retrieving cookies. Each browser session can be identified by a browser ID and each tab by an index, allowing multiple concurrent sessions. Typical usage involves starting the MCP server, then issuing tool commands to automate browsing tasks like opening a default Google page, performing searches, navigating to specific websites, and summarizing content from visited pages. The tools are named in the README as open_browser, navigate_to_url, google_search, take_screenshot, get_page_title, input_text, extract_page_text, and many related by-browser-id variants to target specific browser instances and tabs.
How to install
Prerequisites:
- Java 17+ (or a compatible JDK) installed on the system
- A Chrome WebDriver-compatible environment if not embedding Chrome directly via the server
- A built Chrome MCP Server JAR built or available at a known path
Installation steps:
- Ensure Java is installed and accessible via JAVA_PATH. Example: export JAVA_PATH=/path/to/java
- Obtain the Chrome MCP Server JAR and place it somewhere on your filesystem. Example path: /path/to/chrome-mcp-server-0.0.1.jar
- Create a configuration file or environment that points to the Java executable and the JAR path. Example config: { "mcpServers": { "spring-ai-chrome-mcp-server": { "command": "{JAVA_PATH}", "args": [ "-Dspring.ai.mcp.server.stdio=true", "-jar", "{JAR_PATH}" ] } } }
- Start the MCP server using your preferred runner (e.g., a process manager or a script that reads the mcp_config). Ensure the server prints that it is listening for MCP commands.
- Connect to the MCP server from your client tooling and begin issuing commands such as open_browser, navigate_to_url, or google_search.
Additional notes
Tips and notes:
- The server supports multiple browsers simultaneously; each browser has an ID and each tab has an index. Use the by_browser_id variants to target a specific browser instance or tab.
- Typical flow: open_browser, navigate_to_url (or google_search), switch_to_tab, extract_page_text, and take_screenshot for verification.
- If you encounter issues starting the server, verify JAVA_PATH and JAR_PATH are correct and that the port the MCP server binds to is accessible by the client.
- For stability, ensure Chrome (or the underlying browser engine used by the MCP server) is up-to-date and compatible with the MCP server version.
- Logging: enable verbose logs if available in your deployment to diagnose navigation failures, timeouts, or selector errors when interacting with page elements.