Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PROJECT_ROOTNoProject root path (optional, defaults to current working directory).
ENABLE_BASE64NoInclude base64 encoded images in tool responses (default: false / affects token usage and context window when enabled)false

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}
completions
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
how-to-useD

Description of how to use the server

start-browserB

Creates a new browser context with an auto-generated unique ID

list-browsersA

Lists all active browser instances

close-browserB

Closes a specific browser instance

get-context-infoC

Gets detailed information about a specific browser instance

get-context-statsC

Gets usage statistics for browsers

get-hmr-eventsC

Retrieves recent HMR events

capture-screenshotA

Captures a screenshot of the current page or a specific element. Stores the screenshot in the MCP resource system and returns a resource URI. If ENABLE_BASE64 environment variable is set to 'true', also includes base64 encoded image in the response.

get-element-propertiesB

Retrieves properties and state information of a specific element

get-element-stylesC

Retrieves style information of a specific element

get-element-dimensionsB

Retrieves dimension and position information of a specific element

monitor-networkA

Monitors network requests in the browser for a specified duration

get-element-htmlA

Retrieves the HTML content of a specific element and its children with optional depth control

get-console-logsB

Retrieves console logs from the development server

execute-browser-commandsB

Executes a sequence of predefined browser commands safely. Available commands:

  • click: Clicks on an element matching the selector or at specified coordinates

  • type: Types text into an input element

  • wait: Waits for an element, a specified time period, or a condition

  • navigate: Navigates to a specified URL

  • select: Selects an option in a dropdown

  • check: Checks or unchecks a checkbox

  • hover: Hovers over an element

  • focus: Focuses an element

  • blur: Removes focus from an element

  • keypress: Simulates pressing a keyboard key

  • scroll: Scrolls the page or an element

  • getAttribute: Gets an attribute value from an element

  • getProperty: Gets a property value from an element

  • drag: Performs a drag operation from one position to another

  • refresh: Refreshes the current page

Note on coordinates: For all mouse-related commands (click, drag, etc.), coordinates are relative to the browser viewport where (0,0) is the top-left corner. X increases to the right, Y increases downward.

Examples are available in the schema definition.

browser-evaluateB

Evaluates JavaScript code directly in the browser context and returns the result. Supports expressions, function strings, and complex code with automatic execution handling. Can target the entire page or work with element handles for precise DOM manipulation.

Examples:

  • Simple expression: "document.title"

  • Arrow function: "() => document.querySelectorAll('a').length"

  • Regular function: "function() { return document.body.children.length; }"

  • Function with arguments: "(tag) => document.getElementsByTagName(tag).length"

  • Complex code: "() => { const divs = document.querySelectorAll('div'); return { count: divs.length, hasClass: divs[0]?.className }; }"

  • Async function: "async () => { const res = await fetch('/api'); return res.json(); }"

Prompts

Interactive templates invoked by user choice

NameDescription
init

Resources

Contextual data attached and managed by the client

NameDescription
screenshots

TDQS

B3/5.0

Scored across 16 tools

Disambiguation4/5

Most tools target clearly distinct purposes: browser lifecycle, element inspection, diagnostics, and action execution. A couple of pairs could be confused—get-context-info vs. get-context-stats and execute-browser-commands vs. browser-evaluate—but the descriptions provide enough separation.

Naming Consistency4/5

Tool names mostly follow a consistent lowercase hyphenated verb-noun pattern like start-browser, list-browsers, and capture-screenshot. browser-evaluate breaks the pattern by placing the noun first, and how-to-use is a nonstandard meta tool, but overall the convention is predictable.

Tool Count4/5

At 16 tools, the server is slightly above the ideal range but each tool maps to a legitimate browser automation capability. Some could be consolidated, such as the element getter tools or context info/stats, but the count is still reasonable for the scope.

Completeness4/5

The server covers the main browser automation workflow: lifecycle management, interaction via commands and evaluation, element inspection, screenshots, network monitoring, and console/HMR diagnostics. Minor gaps exist, such as no standalone navigation tool outside execute-browser-commands and no explicit tab or cookie management, but agents can work around these.

Maintenance

ActivityInactive
ResponsivenessNo issues