Files
goose/documentation/docs/tutorials/selenium-mcp.md
2025-05-09 12:15:38 -06:00

5.8 KiB

title, description
title description
Selenium Extension Add Selenium MCP Server as a Goose Extension

import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed';

This tutorial covers how to add the Selenium MCP Server as a Goose extension to automate browser interactions such as navigating web pages and completing forms.

:::tip TLDR Launch the installer Command

npx -y @angiejones/mcp-selenium
:::

Configuration

:::info Note that you'll need Node.js installed on your system to run this command, as it uses npx. :::

1. [Launch the installer](goose://extension?cmd=npx&arg=-y&arg=%40angiejones%2Fmcp-selenium&id=selenium-mcp&name=Selenium%20MCP&description=automates%20browser%20interactions) 2. Press `Yes` to confirm the installation 3. Click `Save Configuration` 5. Scroll to the top and click `Exit` from the upper left corner 1. Run the `configure` command: ```sh goose configure ```
  1. Choose to add a Command-line Extension
  ┌   goose-configure 
  │
  ◇  What would you like to configure?
  │  Add Extension (Connect to a new extension) 
  │
  ◆  What type of extension would you like to add?
  │  ○ Built-in Extension 
  // highlight-start    
  │  ● Command-line Extension (Run a local command or script)
  // highlight-end    
  │  ○ Remote Extension 
  └ 
  1. Give your extension a name
  ┌   goose-configure 
  │
  ◇  What would you like to configure?
  │  Add Extension (Connect to a new extension) 
  │
  ◇  What type of extension would you like to add?
  │  Command-line Extension 
  │
  // highlight-start
  ◆  What would you like to call this extension?
  │  Selenium
  // highlight-end
  └ 
  1. Enter the command
  ┌   goose-configure 
  │
  ◇  What would you like to configure?
  │  Add Extension (Connect to a new extension) 
  │
  ◇  What type of extension would you like to add?
  │  Command-line Extension 
  │
  ◇  What would you like to call this extension?
  │  Selenium
  │
  // highlight-start
  ◆  What command should be run?
  │  npx -y @angiejones/mcp-selenium
  // highlight-end
  └ 
  1. Enter the number of seconds Goose should wait for actions to complete before timing out. Default is 300s ```sh ┌ goose-configure │ ◇ What would you like to configure? │ Add Extension (Connect to a new extension) │ ◇ What type of extension would you like to add? │ Command-line Extension │ ◇ What would you like to call this extension? │ Selenium │ ◇ What command should be run? │ npx -y @angiejones/mcp-selenium │ // highlight-start ◆ Please set the timeout for this tool (in secs): │ 300 // highlight-end │ └

6. Choose to add a description. If you select "Yes" here, you will be prompted to enter a description for the extension.
  ```sh
  ┌   goose-configure 
  │
  ◇  What would you like to configure?
  │  Add Extension (Connect to a new extension) 
  │
  ◇  What type of extension would you like to add?
  │  Command-line Extension 
  │
  ◇  What would you like to call this extension?
  │  Selenium
  │
  ◇  What command should be run?
  │  npx -y @angiejones/mcp-selenium
  │
  ◇  Please set the timeout for this tool (in secs):
  │  300
  │
  // highlight-start
  ◇  Would you like to add a description?
  │  No
  // highlight-end
  │
  └ 
  1. Choose No when asked to add environment variables
 ┌   goose-configure 
 │
 ◇  What would you like to configure?
 │  Add Extension (Connect to a new extension) 
 │
 ◇  What type of extension would you like to add?
 │  Command-line Extension 
 │
 ◇  What would you like to call this extension?
 │  Selenium
 │
 ◇  What command should be run?
 │  npx -y @angiejones/mcp-selenium
 │     
 ◇  Please set the timeout for this tool (in secs):
 │  300
 │
 ◇  Would you like to add a description?
 │  No
 │    
 // highlight-start
 ◆  Would you like to add environment variables?
 │  No 
 │
 // highlight-end
 └  Added Selenium extension

Example Usage

Let's use Goose to build a test automation project from scratch! We'll use the Selenium MCP to automate filling out a web form, then have Goose generate a Selenium project with the code so that we can run these tests again when needed.

Goose Prompt

Use selenium to go to the heroku formy site and fill out the form page with generic data. then can you turn what you've done into an automation script for me? I would like it in Java. Also use the Page Object Model pattern.

Goose Output