PyPen 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 | {
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| browser_launchB | Launch a new browser instance with optional configuration (headless, proxy, user agent, etc.) |
| browser_closeA | Close the browser instance |
| browser_navigateB | Navigate to a URL |
| browser_go_backA | Navigate back in browser history |
| browser_go_forwardA | Navigate forward in browser history |
| browser_refreshA | Refresh the current page |
| browser_get_infoA | Get information about the current page (URL, title) |
| network_enable_monitoringB | Enable network event monitoring to capture all HTTP traffic |
| network_disable_monitoringB | Disable network event monitoring |
| network_get_logsA | Get captured network logs, optionally filtered by URL pattern |
| network_get_response_bodyB | Get the response body for a specific request ID |
| network_enable_interceptionB | Enable request/response interception |
| network_disable_interceptionB | Disable request interception |
| network_setup_handlerB | Set up automatic interception handler with blocking, modification, and mocking rules |
| dom_find_elementC | Find an element on the page using various selectors |
| dom_find_elementsC | Find multiple elements on the page |
| dom_get_textB | Get the text content of an element |
| dom_get_htmlB | Get the outer HTML of an element |
| dom_clickB | Click on an element. IMPORTANT: You SHOULD either call debug_screenshot or view the source after every click to observe the result of the interaction. |
| dom_typeC | Type text into an input element |
| dom_scrollB | Scroll the page |
| dom_get_sourceB | Get the full page HTML source |
| dom_wait_forB | Wait for an element to appear on the page |
| js_executeB | Execute JavaScript in the browser context |
| js_get_console_logsB | Get console logs from the browser |
| js_get_global_varsA | Extract global JavaScript variables |
| js_get_local_storageA | Get all localStorage data |
| js_get_session_storageA | Get all sessionStorage data |
| js_set_local_storageC | Set a localStorage value |
| js_get_formsA | Get all forms on the page with their inputs |
| js_get_linksA | Get all links on the page |
| session_get_cookiesB | Get all cookies from the browser |
| session_get_cookieB | Get a specific cookie by name |
| session_set_cookieC | Set a cookie in the browser |
| session_delete_cookieB | Delete a cookie by name |
| session_clear_cookiesC | Clear all cookies |
| session_export_cookiesB | Export cookies in various formats (json, netscape, header) |
| session_import_cookiesB | Import cookies from JSON string |
| session_make_requestC | Make an HTTP request using the browser's session (inherits cookies/auth) |
| debug_screenshotA | Take a screenshot of the current page. Returns the image directly. MUST be called after every dom_click to observe the result. |
| debug_get_viewportA | Get the current viewport size |
| debug_set_viewportB | Set the viewport size |
| debug_get_performanceB | Get performance metrics from the page |
| debug_highlightB | Highlight all elements matching a selector |
| captcha_enable_turnstile_bypassA | Enable automatic Cloudflare Turnstile bypass. Uses PyDoll's built-in mechanism to detect and click the Turnstile checkbox. Success depends on IP reputation and browser fingerprint - this is NOT a magic bypass. Use residential proxies for best results. |
| captcha_disable_turnstile_bypassA | Disable automatic Turnstile bypass |
| captcha_detect_typeB | Detect what type of captcha is present on the current page. Scans for Cloudflare Turnstile, reCAPTCHA, hCaptcha, and image challenge indicators. |
| captcha_handle_autoA | Attempt to automatically handle any detected captcha. For Turnstile: uses built-in bypass. For others (ReCAPTCHA v2, hCaptcha, image challenges): returns need for human intervention. |
| captcha_request_human_interventionA | Request human intervention for an unsolvable captcha (e.g., ReCAPTCHA v2 image challenges, hCaptcha puzzles). Creates an intervention request with screenshot. The automation should wait for human to solve. |
| captcha_get_pending_interventionsA | Get all pending human intervention requests that have not been resolved |
| captcha_resolve_interventionA | Mark an intervention request as resolved after human has solved the captcha. This allows the automation to continue. |
| captcha_wait_for_resolutionA | Block until a human intervention is resolved or timeout expires. Use this to pause automation while waiting for human to solve captcha. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/eyenoticeall/PyPen'
If you have feedback or need assistance with the MCP directory API, please join our Discord server