DrissionPage BetterMCP
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 | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser_connect | Connect to an existing Chrome browser or launch a new one. |
| browser_info | Get current browser status including address, tab count, and process ID. |
| browser_quitA | Close the browser and release all resources. |
| tab_newA | Open a new browser tab. Optionally navigate to URL. Automatically switches to the new tab. |
| tab_close | Close a tab. Defaults to current tab if tab_id not specified. |
| tab_switch | Switch to a specific tab by its tab_id. Use tab_list to see available tabs. |
| tab_listA | List all open tabs with their tab_id, title, URL, and which is current. |
| tab_findA | Search tabs by title and/or URL substring. Returns matching tabs. |
| tab_infoB | Get details of a specific tab or the current tab. |
| page_navigateB | Navigate to a URL. Returns final URL (after redirects) and page title. Default timeout 15s. |
| page_back | Go back in browser history. Optionally specify number of steps. |
| page_forwardA | Go forward in browser history. Optionally specify number of steps. |
| page_refreshA | Refresh the current page. Set ignore_cache=true to bypass browser cache. |
| page_stop | Stop the current page from loading. |
| element_findA | Find a single element and return its info including element_id for future reference. |
| element_find_allC | Find all matching elements. Returns list with element_id for each. |
| element_waitA | Wait for an element to reach the given state. |
| element_click | Click an element. Provide locator or element_id (from element_find). |
| element_input | Type text into an input element. Provide locator or element_id. |
| element_clearC | Clear the value of an input element. Provide locator or element_id. |
| element_hover | Hover the mouse over an element. Provide locator or element_id. |
| element_dragA | Drag an element to a target element or by pixel offset. |
| element_get_textB | Get the visible text content of an element. Provide locator or element_id. |
| element_get_attr | Get the value of an HTML attribute from an element. |
| element_get_infoA | Get full element details: tag, text, rect, attrs, html, states. |
| page_screenshot | Take a screenshot of the current page. Returns JPEG image (quality=100 fixed). |
| element_screenshot | Take a screenshot of a specific element. Returns JPEG image (quality=100 fixed). |
| page_wait_load | Wait for the page to reach a specific load state. |
| frame_list | List all iframes in the current page. |
| frame_switch | Switch to an iframe by locator or 1-based index. |
| frame_parent | Return to the parent frame. If already at top-level, returns confirmation. |
| frame_mainB | Return to the top-level page from any nested iframe. Clears frame context entirely. |
| page_scrollA | Scroll the page in a direction. |
| element_scroll_into_view | Scroll until the target element is visible in the viewport. |
| element_select | Select option(s) in a element. |
| element_get_optionsA | Get all options of a element with text, value, index, and selected status. |
| page_get_textB | Get the plain text content of the current page (no HTML tags). Useful for reading page content without markup. |
| page_get_html | Get the HTML source of the current page. |
| network_listen_startA | Start listening for network requests matching a URL pattern on the current tab. |
| network_listen_waitA | Wait for network packets captured by a previously started listener. Returns captured packets written to a JSONL file. Automatically stops the listener after waiting. If timeout occurs with partial captures, returns what was captured (not an error). Use count=1 for a single expected request, higher for multiple. |
| cookie_get_allA | Get all cookies for the current page. Optionally filter by domain substring. |
| cookie_setC | Set a cookie. Domain defaults to current page domain if not specified. |
| cookie_removeB | Remove a cookie by name, or clear ALL cookies if name is not provided. |
| storage_getB | Read a value from localStorage or sessionStorage. |
| storage_setB | Write a value to localStorage or sessionStorage. |
| action_chain | Execute a sequence of low-level browser actions (move, click, drag, type, keyboard). |
| keyboard_pressA | Press a key or key combination on the current page. |
| keyboard_typeA | Type text continuously on the current page as keyboard input. |
| dialog_handleA | Handle the currently open alert/confirm/prompt dialog. |
| dialog_autoA | Enable or disable automatic handling of alert/confirm/prompt dialogs. |
| js_executeA | Execute JavaScript code on the current page and return the result. |
| cdp_execute | Execute a raw Chrome DevTools Protocol (CDP) command. Advanced — use specific tools when available. Sends the command directly to the browser's CDP endpoint. The command string is the CDP method (e.g., "Page.navigate", "Network.enable") and params is the CDP parameters dict. Returns the raw CDP response. |
| file_upload | Upload a file via input[type=file] element. Provide locator or element_id to find the file input. Use by_js=True for hidden inputs (e.g., Ant Design Upload). |
| file_download | Download a file. Provide url for direct download, or locator/element_id to click a download link. save_dir and rename control output location. |
| page_save | Save current page as PDF or MHTML. For PDF, use landscape/print_background/scale parameters. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| workflow_guide | Standard DrissionPage automation workflow guide |
| locator_help | DrissionPage locator syntax help with page context |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| resource_dp_status | Browser and service status |
| resource_dp_config | Current server configuration |
| resource_dp_guide | DrissionPage locator syntax quick reference |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/crmmc/DrissionPage-BetterMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server