CDP MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| cdp_launchA | Launch a Chrome/Chromium browser with CDP enabled. Creates a dedicated profile directory. |
| cdp_connectA | Connect to an already-running Chrome/Chromium instance with CDP enabled. |
| cdp_list_tabsB | List all open browser tabs. |
| cdp_navigateC | Navigate to a URL or perform navigation actions (back, forward, refresh). |
| cdp_find_elementsB | Discover interactive elements on the page (inputs, buttons, links, etc.). |
| cdp_interactC | Interact with elements: click, type, upload files, select options, etc. |
| cdp_readC | Read content from the page: full page text, element text, attributes. |
| cdp_screenshotB | Capture a screenshot of the page or a specific element. |
| cdp_waitC | Wait for conditions: element visible, text contains, navigation, etc. |
| cdp_executeC | Execute JavaScript in the page context. |
| cdp_list_framesA | List all frames on the page (main frame + iframes). Use this to find iframes for LinkedIn Easy Apply, Gmail compose, etc. |
| cdp_frame_interactB | Interact with elements inside iframes. Automatically searches all frames for the element. |
| cdp_type_textA | Type text at the current cursor position using CDP Input.insertText. This simulates real keyboard input and works with React/Vue/Angular controlled inputs. Focus an element first with cdp_interact focus action. |
| cdp_click_coordinatesA | Click at raw x,y screen coordinates. Useful for clicking elements in shadow DOM or other hard-to-select elements. Get coordinates from screenshots or cdp_find_elements rect values. |
| cdp_upload_shadowA | Upload a file to a file input in shadow DOM. First use cdp_execute to find the file input and store it in window.__fileInput, then call this tool. |
| cdp_set_valueA | Set the value of an input/textarea, properly handling React/Vue/Angular controlled inputs. This clears existing content and sets new value, triggering all necessary events. Best for form fields that cdp_interact type struggles with. |
| cdp_monaco_editorA | Interact with Monaco Editor (VS Code web editor) on the page. Detects Monaco instances and provides reliable get/set operations that preserve formatting. Much better than generic text input tools for Monaco. |
| cdp_submit_formA | Submit a form reliably, with special handling for React/Vue/Angular. Tries multiple submission methods: requestSubmit(), clicking submit button, dispatching submit event, and direct submit(). Works when Enter key fails. |
| cdp_site_scanA | Scan current page structure and store in site memory. Detects iframes, shadow DOM, forms, and key elements. Automatically skips if already scanned this conversation epoch (compaction resets this). Use force=true to rescan anyway. |
| cdp_site_infoA | Get stored site memory for the current page or a specific domain. Returns iframe locations, shadow DOM elements, and interaction patterns learned from previous visits. |
| cdp_site_noteB | Add a note or selector pattern to site memory. Use this to record what you learned about interacting with a site. |
| cdp_site_listB | List all sites in memory with their key info. |
| cdp_site_clearB | Clear site memory for a domain (forces fresh scan next time). |
| cdp_epoch_infoB | Get current epoch info. Useful for debugging site memory behavior. |
| cdp_track_bugA | Track a bug in the CDP-MCP. Writes to BUGS.md in the cdp-mcp folder. Use this when you encounter issues with browser automation. |
| cdp_list_bugsB | List all tracked bugs in CDP-MCP. |
| cdp_fix_bugC | Mark a bug as fixed and remove it from the tracking file. |
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 27 tools
The tool set has clear distinctions for core browser automation tasks like navigation, interaction, and reading, but there is notable overlap between cdp_interact, cdp_set_value, and cdp_type_text for input handling, and between cdp_find_elements and cdp_site_scan for element discovery. Descriptions help clarify, but an agent might struggle to choose the optimal tool in some scenarios.
All tools follow a consistent 'cdp_' prefix with snake_case naming, using clear verb_noun patterns (e.g., cdp_launch, cdp_navigate, cdp_read). This uniformity makes the tool set predictable and easy to navigate, with no deviations in style.
With 27 tools, the count is excessive for a browser automation server, leading to potential confusion and redundancy. While the domain is broad, many tools (e.g., cdp_click_coordinates vs. cdp_interact for clicking) could be consolidated, making the set feel heavy and over-engineered.
The tool set comprehensively covers browser automation and site interaction, including connection, navigation, element discovery, interaction, reading, screenshot, form handling, and memory management. There are no obvious gaps; it supports full workflows from launch to debugging, with specialized tools for edge cases like shadow DOM and Monaco editor.