octo-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OCTO_HOST | No | Octo Browser host (for remote/Docker setups) | localhost |
| OCTO_PORT | No | Local API port | 58888 |
| OCTO_PASSWORD | No | Account password for auto-login | |
| OCTO_USERNAME | No | Account email for auto-login | |
| OCTO_API_TOKEN | No | Cloud API token (for search, tags, proxies) |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| octo_health_checkA | Check Octo Browser API availability. Call this first to verify connectivity. |
| octo_list_profilesA | Get list of active (running) Octo Browser profiles. Shows UUID, name, and ws_endpoint for each profile. |
| octo_start_profileA | Start an Octo Browser profile by UUID. Returns ws_endpoint for CDP connection. If already running, returns existing data. |
| octo_stop_profileB | Stop an Octo Browser profile by UUID. |
| octo_start_one_time_profileA | Create and start a one-time (temporary) Octo Browser profile. Profile is deleted after stopping. Faster than regular profiles, ideal for scraping. |
| octo_find_profile_by_nameB | Find an Octo Browser profile by name (title). Uses Cloud API. Requires OCTO_API_TOKEN. |
| octo_start_profile_by_nameA | Find a profile by name and start it. Combines find + start. Requires OCTO_API_TOKEN. |
| octo_search_profilesC | Search profiles by partial name or tags. Uses Cloud API. Requires OCTO_API_TOKEN. |
| octo_get_profileA | Get full profile data by UUID: fingerprint, proxy, extensions, description, tags. Uses Cloud API. |
| octo_get_extensionsA | Get list of team extensions. Shows name, version, uuid of each extension. |
| octo_delete_extensionsB | Delete team extensions by UUID. |
| octo_get_tagsA | Get list of all tags. Shows name, color, uuid of each tag. |
| octo_get_proxiesA | Get list of all proxies. Shows type, host, port, uuid of each proxy. |
| browser_connectA | Connect to a running Octo Browser profile via CDP. Must be called after octo_start_profile. |
| browser_disconnectA | Disconnect from browser (does not stop the Octo profile). |
| browser_navigateB | Navigate to the specified URL in the browser. |
| browser_get_urlA | Get the current page URL. |
| browser_go_backA | Go back to the previous page. |
| browser_go_forwardA | Go forward to the next page. |
| browser_reloadA | Reload the current page. |
| browser_clickA | Click on an element. Specify a CSS selector or coordinates. |
| browser_typeC | Type text into an element or on the page. |
| browser_press_keyB | Press a keyboard key (Enter, Tab, Escape, etc.) |
| browser_scrollC | Scroll the page. |
| browser_hoverB | Hover over an element. |
| browser_selectB | Select an option in a select element. |
| browser_screenshotA | Take a screenshot of the page or an element. Returns an image. |
| browser_get_textB | Get text content of an element. |
| browser_get_htmlA | Get HTML content of the page or an element. |
| browser_get_attributeB | Get an attribute of an element. |
| browser_query_selector_allB | Find all elements by selector and return their information. |
| browser_wait_for_selectorB | Wait for an element to appear on the page. |
| browser_evaluateB | Execute JavaScript code on the page and return the result. |
| browser_list_tabsA | Get list of open tabs. |
| browser_switch_tabC | Switch to another tab. |
| browser_new_tabB | Open a new tab. |
| browser_close_tabA | Close the current tab. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 37 tools
Most tools have distinct purposes, especially the browser automation ones. However, the profile management tools like list_profiles, search_profiles, find_profile_by_name, and get_profile are similar and could cause confusion, as could start_profile and start_profile_by_name.
The tool names follow a snake_case format but mix two prefixes (octo_ and browser_) and inconsistent verb choices within the octo_ group (list, get, search, find, start, stop, delete). Some names deviate from verb_noun patterns, like octo_health_check and browser_query_selector_all, making the set readable but not fully predictable.
With 37 tools, this is well above the 25-tool threshold for a heavy set. While the browser automation tools are numerous and justified, the profile management tools include several redundant lookups and start methods that could be consolidated to reduce the count.
The browser automation surface is fairly complete with navigation, interaction, content extraction, and tab management. However, the profile management is incomplete: there is no create, update, or delete for persistent profiles, and extensions, tags, and proxies only support limited read/delete operations.