Playwright MCP

आधिकारिक

ब्राउज़र ऑटोमेशन, पेज निरीक्षण, स्क्रीनशॉट और क्लॉड, कर्सर तथा अन्य AI एजेंटों से वेब इंटरैक्शन के लिए आधिकारिक Playwright MCP सर्वर।

Playwright MCP के साथ आप क्या कर सकते हैं?

  • वेब पेजों पर नेविगेट करें और उनसे इंटरैक्ट करें — सहायक से किसी URL को खोलने, एलिमेंट पर क्लिक करने, फॉर्म भरने, या Playwright के ब्राउज़र ऑटोमेशन का उपयोग करके संरचित एक्सेसिबिलिटी स्नैपशॉट निकालने का अनुरोध करें।
  • ब्राउज़र व्यवहार कॉन्फ़िगर करें--browser, --device, --viewport-size, और --user-agent आर्गुमेंट के माध्यम से ब्राउज़र का प्रकार, व्यूपोर्ट आकार, डिवाइस एमुलेशन, या यूज़र एजेंट सेट करें।
  • सत्र और प्रमाणीकरण प्रबंधित करें — लॉगिन स्थिति को विभिन्न रनों में नियंत्रित करने के लिए स्थायी प्रोफ़ाइल (--user-data-dir), पृथक सत्र (--isolated), या स्टोरेज स्टेट फ़ाइलों (--storage-state) का उपयोग करें।
  • मौजूदा ब्राउज़र से कनेक्ट करें — पुनः प्रमाणीकरण के बिना लॉग-इन सत्रों का पुन: उपयोग करने के लिए --extension फ़्लैग के साथ चल रहे Chrome या Edge इंस्टेंस से जुड़ें।
  • आउटपुट और स्नैपशॉट नियंत्रित करें--output-dir, --output-mode, और --snapshot-mode का उपयोग करके कंसोल संदेशों, नेटवर्क लॉग, और एक्सेसिबिलिटी स्नैपशॉट को फ़ाइलों या stdout पर कैप्चर करें।

दस्तावेज़

Playwright MCP

एक मॉडल संदर्भ प्रोटोकॉल (MCP) सर्वर जो Playwright का उपयोग करके ब्राउज़र स्वचालन क्षमताएँ प्रदान करता है। यह सर्वर LLMs को संरचित एक्सेसिबिलिटी स्नैपशॉट के माध्यम से वेब पेजों के साथ इंटरैक्ट करने में सक्षम बनाता है, जिससे स्क्रीनशॉट या दृश्य-रूप से ट्यून किए गए मॉडलों की आवश्यकता समाप्त हो जाती है।

Playwright MCP बनाम Playwright CLI

यह पैकेज Playwright में MCP इंटरफ़ेस प्रदान करता है। यदि आप एक कोडिंग एजेंट का उपयोग कर रहे हैं, तो आपको इसके बजाय CLI+SKILLS का उपयोग करने से लाभ हो सकता है।

  • CLI: आधुनिक कोडिंग एजेंट तेजी से MCP के बजाय SKILLs के रूप में उजागर CLI-आधारित वर्कफ़्लो को पसंद कर रहे हैं क्योंकि CLI आह्वान अधिक टोकन-कुशल होते हैं: वे मॉडल संदर्भ में बड़े टूल स्कीमा और वर्बोज़ एक्सेसिबिलिटी ट्री लोड करने से बचते हैं, जिससे एजेंट संक्षिप्त, उद्देश्य-निर्मित कमांड के माध्यम से कार्य कर सकते हैं। यह CLI + SKILLs को उच्च-थ्रूपुट कोडिंग एजेंटों के लिए बेहतर बनाता है जिन्हें सीमित संदर्भ विंडो के भीतर बड़े कोडबेस, परीक्षणों और तर्क के साथ ब्राउज़र स्वचालन को संतुलित करना होता है।
    Playwright CLI with SKILLS के बारे में अधिक जानें

  • MCP: MCP विशेष एजेंटिक लूप्स के लिए प्रासंगिक बना हुआ है जो स्थायी स्थिति, समृद्ध आत्मनिरीक्षण और पृष्ठ संरचना पर पुनरावृत्त तर्क से लाभान्वित होते हैं, जैसे कि खोजपूर्ण स्वचालन, स्व-उपचार परीक्षण, या लंबे समय तक चलने वाले स्वायत्त वर्कफ़्लो जहाँ निरंतर ब्राउज़र संदर्भ बनाए रखना टोकन लागत चिंताओं से अधिक महत्वपूर्ण होता है।

मुख्य विशेषताएँ

  • तेज़ और हल्का। पिक्सेल-आधारित इनपुट नहीं, बल्कि Playwright के एक्सेसिबिलिटी ट्री का उपयोग करता है।
  • LLM-अनुकूल। किसी विज़न मॉडल की आवश्यकता नहीं, पूरी तरह से संरचित डेटा पर काम करता है।
  • नियतात्मक उपकरण अनुप्रयोग। स्क्रीनशॉट-आधारित दृष्टिकोणों में आम अस्पष्टता से बचाता है।

आवश्यकताएँ

  • Node.js 18 या नया
  • VS Code, Cursor, Windsurf, Claude Desktop, Goose, Grok, Junie या कोई अन्य MCP क्लाइंट

शुरू करना

सबसे पहले, अपने क्लाइंट के साथ Playwright MCP सर्वर स्थापित करें।

मानक कॉन्फ़िगरेशन अधिकांश उपकरणों में काम करता है:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest"
      ]
    }
  }
}

Install in VS Code Install in VS Code Insiders

Amp

Amp VS Code एक्सटेंशन सेटिंग्स स्क्रीन के माध्यम से या अपनी settings.json फ़ाइल को अपडेट करके जोड़ें:

"amp.mcpServers": {
  "playwright": {
    "command": "npx",
    "args": [
      "@playwright/mcp@latest"
    ]
  }
}

Amp CLI सेटअप:

नीचे दिए गए amp mcp add कमांड के माध्यम से जोड़ें

amp mcp add playwright -- npx @playwright/mcp@latest
Antigravity

Antigravity सेटिंग्स के माध्यम से या अपनी कॉन्फ़िगरेशन फ़ाइल को अपडेट करके जोड़ें:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest"
      ]
    }
  }
}
Claude Code

Playwright MCP सर्वर जोड़ने के लिए Claude Code CLI का उपयोग करें:

claude mcp add playwright npx @playwright/mcp@latest
Claude Desktop

MCP इंस्टॉल गाइड का पालन करें, ऊपर दिए गए मानक कॉन्फ़िगरेशन का उपयोग करें।

Cline

Configuring MCP Servers अनुभाग में दिए गए निर्देशों का पालन करें

उदाहरण: स्थानीय सेटअप

अपनी cline_mcp_settings.json फ़ाइल में निम्नलिखित जोड़ें:

{
  "mcpServers": {
    "playwright": {
      "type": "stdio",
      "command": "npx",
      "timeout": 30,
      "args": [
        "-y",
        "@playwright/mcp@latest"
      ],
      "disabled": false
    }
  }
}
Codex

Playwright MCP सर्वर जोड़ने के लिए Codex CLI का उपयोग करें:

codex mcp add playwright npx "@playwright/mcp@latest"

वैकल्पिक रूप से, कॉन्फ़िगरेशन फ़ाइल ~/.codex/config.toml बनाएँ या संपादित करें और जोड़ें:

[mcp_servers.playwright]
command = "npx"
args = ["@playwright/mcp@latest"]

अधिक जानकारी के लिए, Codex MCP documentation देखें।

Copilot

Playwright MCP सर्वर को सहभागी रूप से जोड़ने के लिए Copilot CLI का उपयोग करें:

/mcp add

वैकल्पिक रूप से, कॉन्फ़िगरेशन फ़ाइल ~/.copilot/mcp-config.json बनाएँ या संपादित करें और जोड़ें:

{
  "mcpServers": {
    "playwright": {
      "type": "local",
      "command": "npx",
      "tools": [
        "*"
      ],
      "args": [
        "@playwright/mcp@latest"
      ]
    }
  }
}

अधिक जानकारी के लिए, Copilot CLI documentation देखें।

Cursor

स्थापित करने के लिए बटन पर क्लिक करें:

Install in Cursor

या मैन्युअल रूप से स्थापित करें:

Cursor Settings -> MCP -> Add new MCP Server पर जाएँ। अपनी पसंद के अनुसार नाम दें, command प्रकार का उपयोग npx @playwright/mcp@latest कमांड के साथ करें। आप Edit पर क्लिक करके कॉन्फ़िगरेशन सत्यापित भी कर सकते हैं या तर्क जैसे कमांड जोड़ सकते हैं।

Factory

Playwright MCP सर्वर जोड़ने के लिए Factory CLI का उपयोग करें:

droid mcp add playwright "npx @playwright/mcp@latest"

वैकल्पिक रूप से, MCP सर्वर प्रबंधित करने के लिए एक सहभागी UI खोलने के लिए Factory ड्रॉइड के भीतर /mcp टाइप करें।

अधिक जानकारी के लिए, Factory MCP documentation देखें।

Gemini CLI

MCP इंस्टॉल गाइड का पालन करें, ऊपर दिए गए मानक कॉन्फ़िगरेशन का उपयोग करें।

Goose

स्थापित करने के लिए बटन पर क्लिक करें:

Install in Goose

या मैन्युअल रूप से स्थापित करें:

Advanced settings -> Extensions -> Add custom extension पर जाएँ। अपनी पसंद के अनुसार नाम दें, STDIO प्रकार का उपयोग करें, और command को npx @playwright/mcp पर सेट करें। "Add Extension" पर क्लिक करें।

Grok

Playwright MCP सर्वर जोड़ने के लिए Grok CLI का उपयोग करें:

grok mcp add playwright -- npx @playwright/mcp@latest

वैकल्पिक रूप से, कॉन्फ़िगरेशन फ़ाइल ~/.grok/config.toml बनाएँ या संपादित करें और जोड़ें:

[mcp_servers.playwright]
command = "npx"
args = ["@playwright/mcp@latest"]

अधिक जानकारी के लिए, Grok MCP documentation देखें।

Junie

Junie CLI में Playwright MCP सर्वर जोड़ने के लिए:

  1. /mcp टाइप करें
  2. नया MCP सर्वर जोड़ने के लिए Ctrl+A दबाएँ
  3. सूची से Playwright चुनें

वैकल्पिक रूप से, .junie/mcp/mcp.json में जोड़ें:

{
  "mcpServers": {
    "Playwright": {
      "command": "npx",
      "args": [
        "-y",
        "@playwright/mcp@latest"
      ]
    }
  }
}

अधिक जानकारी के लिए, Junie MCP configuration documentation देखें।

Kiro

Add to Kiro

MCP सर्वर प्रलेखन का पालन करें। उदाहरण के लिए .kiro/settings/mcp.json में:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest"
      ]
    }
  }
}
LM Studio

स्थापित करने के लिए बटन पर क्लिक करें:

Add MCP Server playwright to LM Studio

या मैन्युअल रूप से स्थापित करें:

दाएँ साइडबार में Program -> Install -> Edit mcp.json पर जाएँ। ऊपर दिए गए मानक कॉन्फ़िगरेशन का उपयोग करें।

opencode

MCP सर्वर प्रलेखन का पालन करें। उदाहरण के लिए ~/.config/opencode/opencode.json में:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "playwright": {
      "type": "local",
      "command": [
        "npx",
        "@playwright/mcp@latest"
      ],
      "enabled": true
    }
  }
}

Qodo Gen

VSCode या IntelliJ में Qodo Gen चैट पैनल खोलें → Connect more tools → + Add new MCP → ऊपर दिए गए मानक कॉन्फ़िगरेशन को पेस्ट करें।

Save पर क्लिक करें।

VS Code

स्थापित करने के लिए बटन पर क्लिक करें:

Install in VS Code Install in VS Code Insiders

या मैन्युअल रूप से स्थापित करें:

MCP इंस्टॉल गाइड का पालन करें, ऊपर दिए गए मानक कॉन्फ़िगरेशन का उपयोग करें। आप VS Code CLI का उपयोग करके Playwright MCP सर्वर भी स्थापित कर सकते हैं:

# For VS Code
code --add-mcp '{"name":"playwright","command":"npx","args":["@playwright/mcp@latest"]}'

स्थापना के बाद, Playwright MCP सर्वर VS Code में आपके GitHub Copilot एजेंट के साथ उपयोग के लिए उपलब्ध होगा।

Warp

एक MCP सर्वर जोड़ने के लिए Settings -> AI -> Manage MCP Servers -> + Add पर जाएँ। ऊपर दिए गए मानक कॉन्फ़िगरेशन का उपयोग करें।

वैकल्पिक रूप से, Warp प्रॉम्प्ट में स्लैश कमांड /add-mcp का उपयोग करें और ऊपर से मानक कॉन्फ़िगरेशन पेस्ट करें:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest"
      ]
    }
  }
}
Windsurf

Windsurf MCP प्रलेखन का पालन करें। ऊपर दिए गए मानक कॉन्फ़िगरेशन का उपयोग करें।

कॉन्फ़िगरेशन

Playwright MCP सर्वर निम्नलिखित तर्कों का समर्थन करता है। उन्हें ऊपर दिए गए JSON कॉन्फ़िगरेशन में, "args" सूची के भाग के रूप में प्रदान किया जा सकता है:

विकल्पविवरण
--allowed-hosts <hosts...>होस्ट की अल्पविराम-पृथक सूची जिनसे यह सर्वर सेवा देने की अनुमति है। डिफ़ॉल्ट रूप से वह होस्ट जिससे सर्वर बंधा है। होस्ट जाँच अक्षम करने के लिए '*' पास करें।
env PLAYWRIGHT_MCP_ALLOWED_HOSTS
--allowed-origins ब्राउज़र को अनुरोध करने की अनुमति देने के लिए विश्वसनीय मूलों की अर्धविराम-पृथक सूची। डिफ़ॉल्ट सभी को अनुमति देना है। महत्वपूर्ण: सुरक्षा सीमा के रूप में कार्य नहीं करता और रीडायरेक्ट को प्रभावित नहीं करता
env PLAYWRIGHT_MCP_ALLOWED_ORIGINS
--allow-unrestricted-file-accessकार्यक्षेत्र रूट के बाहर फ़ाइलों तक पहुँच की अनुमति दें। file:// URL तक अप्रतिबंधित पहुँच की भी अनुमति देता है। डिफ़ॉल्ट रूप से फ़ाइल सिस्टम तक पहुँच केवल कार्यक्षेत्र रूट निर्देशिकाओं (या यदि कोई रूट कॉन्फ़िगर नहीं है तो cwd) तक सीमित है, और file:// URL पर नेविगेशन अवरुद्ध है।
env PLAYWRIGHT_MCP_ALLOW_UNRESTRICTED_FILE_ACCESS
--blocked-origins ब्राउज़र को अनुरोध करने से रोकने के लिए मूलों की अर्धविराम-पृथक सूची। अनुमति सूची से पहले अवरोध सूची का मूल्यांकन किया जाता है। यदि अनुमति सूची के बिना उपयोग किया जाता है, तो अवरोध सूची से मेल न खाने वाले अनुरोधों की अनुमति है। महत्वपूर्ण: सुरक्षा सीमा के रूप में कार्य नहीं करता और रीडायरेक्ट को प्रभावित नहीं करता
env PLAYWRIGHT_MCP_BLOCKED_ORIGINS
--block-service-workersसर्विस वर्कर्स को अवरुद्ध करें
env PLAYWRIGHT_MCP_BLOCK_SERVICE_WORKERS
--browser उपयोग करने के लिए ब्राउज़र या क्रोम चैनल, संभावित मान: chrome, firefox, webkit, msedge.
env PLAYWRIGHT_MCP_BROWSER
--caps सक्षम करने के लिए अतिरिक्त क्षमताओं की अल्पविराम-पृथक सूची, संभावित मान: vision, pdf, devtools.
env PLAYWRIGHT_MCP_CAPS
--cdp-endpoint कनेक्ट करने के लिए CDP एंडपॉइंट।
env PLAYWRIGHT_MCP_CDP_ENDPOINT
--cdp-header <headers...>कनेक्ट अनुरोध के साथ भेजने के लिए CDP हेडर, एकाधिक निर्दिष्ट किए जा सकते हैं।
env PLAYWRIGHT_MCP_CDP_HEADERS
--cdp-timeout CDP एंडपॉइंट से कनेक्ट करने के लिए मिलीसेकंड में टाइमआउट, डिफ़ॉल्ट 30000ms
env PLAYWRIGHT_MCP_CDP_TIMEOUT
--codegen कोड जनरेशन के लिए उपयोग की जाने वाली भाषा निर्दिष्ट करें, संभावित मान: "typescript", "none"। डिफ़ॉल्ट "typescript" है।
env PLAYWRIGHT_MCP_CODEGEN
--config कॉन्फ़िगरेशन फ़ाइल का पथ।
env PLAYWRIGHT_MCP_CONFIG
--console-level लौटाने के लिए कंसोल संदेशों का स्तर: "error", "warning", "info", "debug"। प्रत्येक स्तर में अधिक गंभीर स्तरों के संदेश शामिल होते हैं।
env PLAYWRIGHT_MCP_CONSOLE_LEVEL
--device अनुकरण करने के लिए उपकरण, उदाहरण के लिए: "iPhone 15"
env PLAYWRIGHT_MCP_DEVICE
--mobileएक सामान्य मोबाइल उपकरण का अनुकरण करें (Chromium के लिए Pixel 10, WebKit के लिए iPhone 17)। मोबाइल पृष्ठ आमतौर पर हल्के होते हैं, जो टोकन बचाता है। --device के साथ संयोजित नहीं किया जा सकता।
env PLAYWRIGHT_MCP_MOBILE
--executable-path ब्राउज़र निष्पादन योग्य का पथ।
env PLAYWRIGHT_MCP_EXECUTABLE_PATH
--extensionचल रहे ब्राउज़र इंस्टेंस से कनेक्ट करें (केवल Edge/Chrome)। "Playwright Extension" स्थापित होना आवश्यक है।
env PLAYWRIGHT_MCP_EXTENSION
--endpoint कनेक्ट करने के लिए बाउंड ब्राउज़र एंडपॉइंट।
env PLAYWRIGHT_MCP_ENDPOINT
--grant-permissions <permissions...>ब्राउज़र संदर्भ को देने के लिए अनुमतियों की सूची, उदाहरण के लिए "geolocation", "clipboard-read", "clipboard-write"।
env PLAYWRIGHT_MCP_GRANT_PERMISSIONS
--headlessब्राउज़र को हेडलेस मोड में चलाएँ, डिफ़ॉल्ट रूप से हेडेड
env PLAYWRIGHT_MCP_HEADLESS
--host सर्वर को बाइंड करने के लिए होस्ट। डिफ़ॉल्ट लोकलहोस्ट है। सभी इंटरफेस से बाइंड करने के लिए 0.0.0.0 का उपयोग करें।
env PLAYWRIGHT_MCP_HOST
--ignore-https-errorshttps त्रुटियों को अनदेखा करें
env PLAYWRIGHT_MCP_IGNORE_HTTPS_ERRORS
--init-page <path...>Playwright पेज ऑब्जेक्ट पर मूल्यांकन करने के लिए TypeScript फ़ाइल का पथ
env PLAYWRIGHT_MCP_INIT_PAGE
--init-script <path...>आरंभीकरण स्क्रिप्ट के रूप में जोड़ने के लिए JavaScript फ़ाइल का पथ। स्क्रिप्ट का मूल्यांकन प्रत्येक पृष्ठ में पृष्ठ की किसी भी स्क्रिप्ट से पहले किया जाएगा। एकाधिक बार निर्दिष्ट किया जा सकता है।
env PLAYWRIGHT_MCP_INIT_SCRIPT
--isolatedब्राउज़र प्रोफ़ाइल को मेमोरी में रखें, इसे डिस्क पर सहेजें नहीं।
env PLAYWRIGHT_MCP_ISOLATED
--image-responses क्लाइंट को छवि प्रतिक्रियाएँ भेजनी हैं या नहीं। "allow" या "omit" हो सकता है, डिफ़ॉल्ट "allow" है।
env PLAYWRIGHT_MCP_IMAGE_RESPONSES
--no-sandboxसामान्यतः सैंडबॉक्स किए जाने वाले सभी प्रक्रिया प्रकारों के लिए सैंडबॉक्स अक्षम करें।
env PLAYWRIGHT_MCP_NO_SANDBOX
--output-dir आउटपुट फ़ाइलों के लिए निर्देशिका का पथ।
env PLAYWRIGHT_MCP_OUTPUT_DIR
--output-max-size पुरानी आउटपुट फ़ाइलों को हटाने की सीमा, बाइट्स में।
env PLAYWRIGHT_MCP_OUTPUT_MAX_SIZE
--output-mode स्नैपशॉट, कंसोल संदेश, नेटवर्क लॉग को फ़ाइल में सहेजना है या मानक आउटपुट में। "file" या "stdout" हो सकता है। डिफ़ॉल्ट "stdout" है।
env PLAYWRIGHT_MCP_OUTPUT_MODE
--port SSE ट्रांसपोर्ट के लिए सुनने हेतु पोर्ट।
env PLAYWRIGHT_MCP_PORT
--proxy-bypass प्रॉक्सी को बायपास करने के लिए अल्पविराम-पृथक डोमेन, उदाहरण के लिए ".com,chromium.org,.domain.com"
env PLAYWRIGHT_MCP_PROXY_BYPASS
--proxy-server प्रॉक्सी सर्वर निर्दिष्ट करें, उदाहरण के लिए "http://myproxy:3128" या "socks5://myproxy:8080"
env PLAYWRIGHT_MCP_PROXY_SERVER
--sandboxसामान्यतः सैंडबॉक्स न किए जाने वाले सभी प्रक्रिया प्रकारों के लिए सैंडबॉक्स सक्षम करें।
env PLAYWRIGHT_MCP_SANDBOX
--save-sessionPlaywright MCP सत्र को आउटपुट निर्देशिका में सहेजना है या नहीं।
env PLAYWRIGHT_MCP_SAVE_SESSION
--secrets dotenv प्रारूप में रहस्यों वाली फ़ाइल का पथ
env PLAYWRIGHT_MCP_SECRETS_FILE
--shared-browser-contextसभी कनेक्टेड HTTP क्लाइंट के बीच समान ब्राउज़र संदर्भ का पुन: उपयोग करें।
env PLAYWRIGHT_MCP_SHARED_BROWSER_CONTEXT
--snapshot-mode प्रतिक्रियाओं के लिए स्नैपशॉट लेते समय, उपयोग करने का मोड निर्दिष्ट करता है। "full" या "none" हो सकता है। डिफ़ॉल्ट "full" है।
env PLAYWRIGHT_MCP_SNAPSHOT_MODE
--storage-state पृथक सत्रों के लिए संग्रहण स्थिति फ़ाइल का पथ।
env PLAYWRIGHT_MCP_STORAGE_STATE
--test-id-attribute परीक्षण आईडी के लिए उपयोग करने हेतु विशेषता निर्दिष्ट करें, डिफ़ॉल्ट "data-testid"
env PLAYWRIGHT_MCP_TEST_ID_ATTRIBUTE
--timeout-action मिलीसेकंड में कार्रवाई टाइमआउट निर्दिष्ट करें, डिफ़ॉल्ट 5000ms
env PLAYWRIGHT_MCP_TIMEOUT_ACTION
--timeout-navigation मिलीसेकंड में नेविगेशन टाइमआउट निर्दिष्ट करें, डिफ़ॉल्ट 60000ms
env PLAYWRIGHT_MCP_TIMEOUT_NAVIGATION
--user-agent उपयोगकर्ता एजेंट स्ट्रिंग निर्दिष्ट करें
env PLAYWRIGHT_MCP_USER_AGENT
--user-data-dir उपयोगकर्ता डेटा निर्देशिका का पथ। यदि निर्दिष्ट नहीं है, तो एक अस्थायी निर्देशिका बनाई जाएगी।
env PLAYWRIGHT_MCP_USER_DATA_DIR
--viewport-size पिक्सेल में ब्राउज़र व्यूपोर्ट आकार निर्दिष्ट करें, उदाहरण के लिए "1280x720"
env PLAYWRIGHT_MCP_VIEWPORT_SIZE

उपयोगकर्ता प्रोफ़ाइल

आप Playwright MCP को एक नियमित ब्राउज़र (डिफ़ॉल्ट) की तरह स्थायी प्रोफ़ाइल के साथ, परीक्षण सत्रों के लिए पृथक संदर्भों में चला सकते हैं, या ब्राउज़र एक्सटेंशन का उपयोग करके अपने मौजूदा ब्राउज़र से कनेक्ट कर सकते हैं।

स्थायी प्रोफ़ाइल

सभी लॉग इन जानकारी स्थायी प्रोफ़ाइल में संग्रहीत की जाएगी, यदि आप ऑफ़लाइन स्थिति साफ़ करना चाहते हैं तो आप इसे सत्रों के बीच हटा सकते हैं। स्थायी प्रोफ़ाइल निम्नलिखित स्थानों पर स्थित है और आप इसे --user-data-dir तर्क के साथ ओवरराइड कर सकते हैं।

# Windows
%USERPROFILE%\AppData\Local\ms-playwright\mcp-{channel}-{workspace-hash}

# macOS
- ~/Library/Caches/ms-playwright/mcp-{channel}-{workspace-hash}

# Linux
- ~/.cache/ms-playwright/mcp-{channel}-{workspace-hash}

{workspace-hash} MCP क्लाइंट के कार्यक्षेत्र रूट से प्राप्त होता है, इसलिए विभिन्न परियोजनाओं को स्वचालित रूप से अलग-अलग प्रोफ़ाइल मिलती हैं।

[!महत्वपूर्ण] एक स्थायी प्रोफ़ाइल का उपयोग एक समय में केवल एक ब्राउज़र इंस्टेंस द्वारा किया जा सकता है, इसलिए समान कार्यक्षेत्र साझा करने वाले समवर्ती MCP क्लाइंट विरोध करेंगे। समानांतर में कई क्लाइंट चलाने के लिए, प्रत्येक अतिरिक्त क्लाइंट को --isolated के साथ प्रारंभ करें या इसे एक अलग --user-data-dir पर इंगित करें।

पृथक

पृथक मोड में, प्रत्येक सत्र पृथक प्रोफ़ाइल में प्रारंभ किया जाता है। हर बार जब आप MCP को ब्राउज़र बंद करने के लिए कहते हैं, सत्र बंद हो जाता है और इस सत्र की सभी संग्रहण स्थिति खो जाती है। आप कॉन्फ़िग के contextOptions के माध्यम से या --storage-state तर्क के माध्यम से ब्राउज़र को प्रारंभिक संग्रहण स्थिति प्रदान कर सकते हैं। संग्रहण स्थिति के बारे में अधिक जानें यहाँ

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest",
        "--isolated",
        "--storage-state={path/to/storage.json}"
      ]
    }
  }
}

ब्राउज़र एक्सटेंशन

Playwright MCP Chrome एक्सटेंशन आपको मौजूदा ब्राउज़र टैब से कनेक्ट करने और अपने लॉग-इन सत्रों और ब्राउज़र स्थिति का लाभ उठाने की अनुमति देता है। स्थापना और सेटअप निर्देशों के लिए microsoft/playwright › packages/extension देखें।

प्रारंभिक स्थिति

ब्राउज़र संदर्भ या पृष्ठ को प्रारंभिक स्थिति प्रदान करने के कई तरीके हैं।

संग्रहण स्थिति के लिए, आप या तो:

  • --user-data-dir तर्क का उपयोग करके उपयोगकर्ता डेटा निर्देशिका से प्रारंभ करें। यह सत्रों के बीच सभी ब्राउज़र डेटा को बनाए रखेगा।
  • --storage-state तर्क का उपयोग करके संग्रहण स्थिति फ़ाइल से प्रारंभ करें। यह फ़ाइल से कुकीज़ और स्थानीय संग्रहण को एक पृथक ब्राउज़र संदर्भ में लोड करेगा।

पृष्ठ स्थिति के लिए, आप इसका उपयोग कर सकते हैं:

  • --init-page एक TypeScript फ़ाइल को इंगित करने के लिए जिसका मूल्यांकन Playwright पेज ऑब्जेक्ट पर किया जाएगा। यह आपको पृष्ठ सेट अप करने के लिए मनमाना कोड चलाने की अनुमति देता है।
// init-page.ts
export default async ({ page }) => {
  await page.context().grantPermissions(['geolocation']);
  await page.context().setGeolocation({ latitude: 37.7749, longitude: -122.4194 });
  await page.setViewportSize({ width: 1280, height: 720 });
};
  • --init-script एक JavaScript फ़ाइल को इंगित करने के लिए जिसे आरंभीकरण स्क्रिप्ट के रूप में जोड़ा जाएगा। स्क्रिप्ट का मूल्यांकन प्रत्येक पृष्ठ में पृष्ठ की किसी भी स्क्रिप्ट से पहले किया जाएगा। यह ब्राउज़र API को ओवरराइड करने या वातावरण सेट अप करने के लिए उपयोगी है।
// init-script.js
window.isPlaywrightMCP = true;

कॉन्फ़िगरेशन फ़ाइल

Playwright MCP सर्वर को JSON कॉन्फ़िगरेशन फ़ाइल का उपयोग करके कॉन्फ़िगर किया जा सकता है। आप --config कमांड लाइन विकल्प का उपयोग करके कॉन्फ़िगरेशन फ़ाइल निर्दिष्ट कर सकते हैं:

npx @playwright/mcp@latest --config path/to/config.json
कॉन्फ़िगरेशन फ़ाइल स्कीमा
{
  /**
   * The browser to use.
   */
  browser?: {
    /**
     * The type of browser to use.
     */
    browserName?: 'chromium' | 'firefox' | 'webkit';

    /**
     * Keep the browser profile in memory, do not save it to disk.
     */
    isolated?: boolean;

    /**
     * Path to a user data directory for browser profile persistence.
     * Temporary directory is created by default.
     */
    userDataDir?: string;

    /**
     * Launch options passed to
     * @see https://playwright.dev/docs/api/class-browsertype#browser-type-launch-persistent-context
     *
     * This is useful for settings options like `channel`, `headless`, `executablePath`, etc.
     */
    launchOptions?: playwright.LaunchOptions;

    /**
     * Context options for the browser context.
     *
     * This is useful for settings options like `viewport`.
     */
    contextOptions?: playwright.BrowserContextOptions;

    /**
     * Chrome DevTools Protocol endpoint to connect to an existing browser instance in case of Chromium family browsers.
     */
    cdpEndpoint?: string;

    /**
     * CDP headers to send with the connect request.
     */
    cdpHeaders?: Record<string, string>;

    /**
     * Timeout in milliseconds for connecting to CDP endpoint. Defaults to 30000 (30 seconds). Pass 0 to disable timeout.
     */
    cdpTimeout?: number;

    /**
     * Remote endpoint to connect to an existing Playwright server. May be a
     * WebSocket URL string, or a [ConnectOptions] object that mirrors the
     * `connectOptions` shape used by the test runner. When passed as an object,
     * `exposeNetwork`, `headers`, `slowMo`, and `timeout` are forwarded to the
     * underlying connect call.
     */
    remoteEndpoint?: string | playwright.ConnectOptions & { endpoint: string };

    /**
     * Paths to TypeScript files to add as initialization scripts for Playwright page.
     */
    initPage?: string[];

    /**
     * Paths to JavaScript files to add as initialization scripts.
     * The scripts will be evaluated in every page before any of the page's scripts.
     */
    initScript?: string[];
  },

  /**
   * Connect to a running browser instance (Edge/Chrome only). If specified, `browser`
   * config is ignored.
   * Requires the "Playwright Extension" to be installed.
   */
  extension?: boolean;

  server?: {
    /**
     * The port to listen on for SSE or MCP transport.
     */
    port?: number;

    /**
     * The host to bind the server to. Default is localhost. Use 0.0.0.0 to bind to all interfaces.
     */
    host?: string;

    /**
     * The hosts this server is allowed to serve from. Defaults to the host server is bound to.
     * This is not for CORS, but rather for the DNS rebinding protection.
     */
    allowedHosts?: string[];
  },

  /**
   * List of enabled tool capabilities. Possible values:
   *   - 'core': Core browser automation features.
   *   - 'pdf': PDF generation and manipulation.
   *   - 'vision': Coordinate-based interactions.
   *   - 'devtools': Developer tools features.
   */
  capabilities?: ToolCapability[];

  /**
   * Whether to save the Playwright session into the output directory.
   */
  saveSession?: boolean;

  /**
   * Reuse the same browser context between all connected HTTP clients.
   */
  sharedBrowserContext?: boolean;

  /**
   * Secrets are used to replace matching plain text in the tool responses to prevent the LLM
   * from accidentally getting sensitive data. It is a convenience and not a security feature,
   * make sure to always examine information coming in and from the tool on the client.
   */
  secrets?: Record<string, string>;

  /**
   * The directory to save output files.
   */
  outputDir?: string;

  /**
   * Threshold for evicting old output files, in bytes.
   */
  outputMaxSize?: number;

  console?: {
    /**
     * The level of console messages to return. Each level includes the messages of more severe levels. Defaults to "info".
     */
    level?: 'error' | 'warning' | 'info' | 'debug';
  },

  network?: {
    /**
     * List of origins to allow the browser to request. Default is to allow all. Origins matching both `allowedOrigins` and `blockedOrigins` will be blocked.
     *
     * Supported formats:
     * - Full origin: `https://example.com:8080` - matches only that origin
     * - Wildcard port: `http://localhost:*` - matches any port on localhost with http protocol
     */
    allowedOrigins?: string[];

    /**
     * List of origins to block the browser to request. Origins matching both `allowedOrigins` and `blockedOrigins` will be blocked.
     *
     * Supported formats:
     * - Full origin: `https://example.com:8080` - matches only that origin
     * - Wildcard port: `http://localhost:*` - matches any port on localhost with http protocol
     */
    blockedOrigins?: string[];
  };

  /**
   * Specify the attribute to use for test ids, defaults to "data-testid".
   */
  testIdAttribute?: string;

  timeouts?: {
    /*
     * Configures default action timeout: https://playwright.dev/docs/api/class-page#page-set-default-timeout. Defaults to 5000ms.
     */
    action?: number;

    /*
     * Configures default navigation timeout: https://playwright.dev/docs/api/class-page#page-set-default-navigation-timeout. Defaults to 60000ms.
     */
    navigation?: number;

    /**
     * Configures default expect timeout: https://playwright.dev/docs/test-timeouts#expect-timeout. Defaults to 5000ms.
     */
    expect?: number;
  };

  /**
   * Whether to send image responses to the client. Can be "allow", "omit", or "auto". Defaults to "auto", which sends images if the client can display them.
   */
  imageResponses?: 'allow' | 'omit';

  snapshot?: {
    /**
     * When taking snapshots for responses, specifies the mode to use.
     */
    mode?: 'full' | 'none';
  };

  /**
   * allowUnrestrictedFileAccess acts as a guardrail to prevent the LLM from accidentally
   * wandering outside its intended workspace. It is a convenience defense to catch unintended
   * file access, not a secure boundary; a deliberate attempt to reach other directories can be
   * easily worked around, so always rely on client-level permissions for true security.
   */
  allowUnrestrictedFileAccess?: boolean;

  /**
   * Specify the language to use for code generation.
   */
  codegen?: 'typescript' | 'none';
}

स्टैंडअलोन MCP सर्वर

डिस्प्ले के बिना सिस्टम पर या IDE की वर्कर प्रक्रियाओं से हेडेड ब्राउज़र चलाते समय, DISPLAY वाले वातावरण से MCP सर्वर चलाएँ और HTTP ट्रांसपोर्ट सक्षम करने के लिए --port ध्वज पास करें।

npx @playwright/mcp@latest --port 8931

और फिर MCP क्लाइंट कॉन्फ़िग में, url को HTTP एंडपॉइंट पर सेट करें:

{
  "mcpServers": {
    "playwright": {
      "url": "http://localhost:8931/mcp"
    }
  }
}

सुरक्षा

Playwright MCP एक सुरक्षा सीमा नहीं है। अपने परिनियोजन को सुरक्षित करने के मार्गदर्शन के लिए MCP सुरक्षा सर्वोत्तम अभ्यास देखें।

Docker

नोट: Docker कार्यान्वयन इस समय केवल हेडलेस क्रोमियम का समर्थन करता है।

{
  "mcpServers": {
    "playwright": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "--init", "--pull=always", "mcr.microsoft.com/playwright/mcp"]
    }
  }
}

या यदि आप MCP क्लाइंट को इसे स्पॉन करने देने के बजाय कंटेनर को दीर्घकालिक सेवा के रूप में चलाना पसंद करते हैं, तो उपयोग करें:

docker run -d -i --rm --init --pull=always \
  --entrypoint node \
  --name playwright \
  -p 8931:8931 \
  mcr.microsoft.com/playwright/mcp \
  /app/cli.js --headless --browser chromium --no-sandbox --port 8931 --host 0.0.0.0

सर्वर होस्ट पोर्ट 8931 पर सुनेगा और किसी भी MCP क्लाइंट द्वारा पहुँचा जा सकता है।

आप स्वयं Docker छवि बना सकते हैं।

docker build -t mcr.microsoft.com/playwright/mcp .
प्रोग्रामेटिक उपयोग
import http from 'http';

import { createConnection } from '@playwright/mcp';
import { SSEServerTransport } from '@modelcontextprotocol/sdk/server/sse.js';

http.createServer(async (req, res) => {
  // ...

  // Creates a headless Playwright MCP server with SSE transport
  const connection = await createConnection({ browser: { launchOptions: { headless: true } } });
  const transport = new SSEServerTransport('/messages', res);
  await connection.connect(transport);

  // ...
});

उपकरण

मुख्य स्वचालन - **browser_click**
  • शीर्षक: क्लिक करें
  • विवरण: वेब पेज पर क्लिक करें
  • पैरामीटर:
    • element (string, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय तत्व विवरण
    • target (string): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
    • doubleClick (boolean, वैकल्पिक): एकल क्लिक के बजाय डबल क्लिक करना है या नहीं
    • button (string, वैकल्पिक): क्लिक करने के लिए बटन, डिफ़ॉल्ट बायाँ है
    • modifiers (array, वैकल्पिक): दबाने के लिए मॉडिफ़ायर कुंजियाँ
  • केवल-पठनीय: false
  • browser_close
    • शीर्षक: ब्राउज़र बंद करें
    • विवरण: पेज बंद करें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: false
  • browser_console_messages
    • शीर्षक: कंसोल संदेश प्राप्त करें
    • विवरण: सभी कंसोल संदेश लौटाता है
    • पैरामीटर:
      • level (string): लौटाने के लिए कंसोल संदेशों का स्तर। प्रत्येक स्तर में अधिक गंभीर स्तरों के संदेश शामिल होते हैं। डिफ़ॉल्ट "info" है।
      • all (boolean, वैकल्पिक): सत्र की शुरुआत से सभी कंसोल संदेश लौटाएँ, न कि केवल अंतिम नेविगेशन के बाद से। डिफ़ॉल्ट false है।
      • filename (string, वैकल्पिक): कंसोल संदेशों को सहेजने के लिए फ़ाइल नाम। यदि प्रदान नहीं किया गया है, तो संदेश टेक्स्ट के रूप में लौटाए जाते हैं।
    • केवल-पठनीय: true
  • browser_drag
    • शीर्षक: माउस खींचें
    • विवरण: दो तत्वों के बीच खींचें और छोड़ें
    • पैरामीटर:
      • startElement (string, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय स्रोत तत्व विवरण
      • startTarget (string): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
      • endElement (string, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय लक्ष्य तत्व विवरण
      • endTarget (string): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
    • केवल-पठनीय: false
  • browser_drop
    • शीर्षक: किसी तत्व पर फ़ाइलें या डेटा छोड़ें
    • विवरण: किसी तत्व पर फ़ाइलें या MIME-प्रकार का डेटा छोड़ें, जैसे कि पेज के बाहर से खींचा गया हो। "paths" या "data" में से कम से कम एक प्रदान किया जाना चाहिए।
    • पैरामीटर:
      • element (string, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय तत्व विवरण
      • target (string): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
      • paths (array, वैकल्पिक): तत्व पर छोड़ने के लिए फ़ाइलों के निरपेक्ष पथ।
      • data (object, वैकल्पिक): छोड़ने के लिए डेटा, MIME प्रकार से स्ट्रिंग मान के मानचित्र के रूप में (जैसे {"text/plain": "hello", "text/uri-list": "https://example.com"})।
    • केवल-पठनीय: false
  • browser_evaluate
    • शीर्षक: जावास्क्रिप्ट का मूल्यांकन करें
    • विवरण: पेज या तत्व पर जावास्क्रिप्ट अभिव्यक्ति का मूल्यांकन करें
    • पैरामीटर:
      • element (string, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय तत्व विवरण
      • target (string, वैकल्पिक): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
      • function (string): () => { /* code / } या (element) => { / code */ } जब तत्व प्रदान किया गया हो
      • filename (string, वैकल्पिक): परिणाम सहेजने के लिए फ़ाइल नाम। यदि प्रदान नहीं किया गया है, तो परिणाम टेक्स्ट के रूप में लौटाया जाता है।
    • केवल-पठनीय: false
  • browser_file_upload
    • शीर्षक: फ़ाइलें अपलोड करें
    • विवरण: एक या एकाधिक फ़ाइलें अपलोड करें
    • पैरामीटर:
      • paths (array, वैकल्पिक): अपलोड करने के लिए फ़ाइलों के निरपेक्ष पथ। एकल फ़ाइल या एकाधिक फ़ाइलें हो सकती हैं। यदि छोड़ा गया, तो फ़ाइल चयनकर्ता रद्द कर दिया जाता है।
    • केवल-पठनीय: false
  • browser_fill_form
    • शीर्षक: फ़ॉर्म भरें
    • विवरण: एकाधिक फ़ॉर्म फ़ील्ड भरें
    • पैरामीटर:
      • fields (array): भरने के लिए फ़ील्ड
    • केवल-पठनीय: false
  • browser_find
    • शीर्षक: पेज स्नैपशॉट में खोजें
    • विवरण: टेक्स्ट या रेगुलर एक्सप्रेशन के लिए वर्तमान पेज के एक्सेसिबिलिटी स्नैपशॉट में खोजें। आसपास के संदर्भ की कुछ पंक्तियों (खोज स्निपेट की तरह) के साथ मिलान करने वाले स्नैपशॉट नोड्स लौटाता है, प्रत्येक को ट्री के रूट से उसके पथ के नीचे दिखाया जाता है, जो पूरे स्नैपशॉट को कैप्चर करने से सस्ता है जब आपको केवल एक तत्व और उसके संदर्भ का पता लगाने की आवश्यकता होती है।
    • पैरामीटर:
      • text (string, वैकल्पिक): पेज स्नैपशॉट में खोजने के लिए सादा टेक्स्ट (केस-असंवेदनशील सबस्ट्रिंग मिलान)। या तो टेक्स्ट या regex प्रदान करें, दोनों नहीं।
      • regex (string, वैकल्पिक): पेज स्नैपशॉट में खोजने के लिए रेगुलर एक्सप्रेशन। मिलान डिफ़ॉल्ट रूप से केस-संवेदी है; फ़्लैग जोड़ने के लिए पैटर्न को स्लैश में लपेटें, जैसे केस-असंवेदनशील के लिए "/error/i"। या तो टेक्स्ट या regex प्रदान करें, दोनों नहीं।
    • केवल-पठनीय: true
  • browser_handle_dialog
    • शीर्षक: डायलॉग संभालें
    • विवरण: डायलॉग संभालें
    • पैरामीटर:
      • accept (boolean): डायलॉग स्वीकार करना है या नहीं।
      • promptText (string, वैकल्पिक): प्रॉम्प्ट डायलॉग के मामले में प्रॉम्प्ट का टेक्स्ट।
    • केवल-पठनीय: false
  • browser_hover
    • शीर्षक: माउस होवर करें
    • विवरण: पेज पर तत्व पर होवर करें
    • पैरामीटर:
      • element (string, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय तत्व विवरण
      • target (string): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
    • केवल-पठनीय: false
  • browser_navigate
    • शीर्षक: URL पर नेविगेट करें
    • विवरण: URL पर नेविगेट करें
    • पैरामीटर:
      • url (string): नेविगेट करने के लिए URL
    • केवल-पठनीय: false
  • browser_navigate_back
    • शीर्षक: वापस जाएँ
    • विवरण: इतिहास में पिछले पेज पर वापस जाएँ
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: false
  • browser_network_request
    • शीर्षक: नेटवर्क अनुरोध विवरण दिखाएँ
    • विवरण: एकल नेटवर्क अनुरोध का पूरा विवरण (हेडर और बॉडी) लौटाता है, या यदि part सेट है तो एकल भाग। browser_network_requests से संख्या का उपयोग करें।
    • पैरामीटर:
      • index (integer): अनुरोध का 1-आधारित सूचकांक, जैसा कि browser_network_requests द्वारा मुद्रित किया गया है।
      • part (string, वैकल्पिक): अनुरोध का केवल यह भाग लौटाएँ। पूर्ण विवरण लौटाने के लिए छोड़ दें।
      • filename (string, वैकल्पिक): परिणाम सहेजने के लिए फ़ाइल नाम। यदि प्रदान नहीं किया गया है, तो आउटपुट टेक्स्ट के रूप में लौटाया जाता है।
    • केवल-पठनीय: true
  • browser_network_requests
    • शीर्षक: नेटवर्क अनुरोधों की सूची बनाएँ
    • विवरण: पेज लोड करने के बाद से नेटवर्क अनुरोधों की एक क्रमांकित सूची लौटाता है। पूर्ण विवरण प्राप्त करने के लिए संख्या के साथ browser_network_request का उपयोग करें।
    • पैरामीटर:
      • static (boolean): क्या सफल स्थैतिक संसाधन जैसे चित्र, फ़ॉन्ट, स्क्रिप्ट आदि शामिल करें। डिफ़ॉल्ट false है।
      • filter (string, वैकल्पिक): केवल उन्हीं अनुरोधों को लौटाएँ जिनका URL इस regexp से मेल खाता है (जैसे "/api/.*user")।
      • filename (string, वैकल्पिक): नेटवर्क अनुरोधों को सहेजने के लिए फ़ाइल नाम। यदि प्रदान नहीं किया गया है, तो अनुरोध टेक्स्ट के रूप में लौटाए जाते हैं।
    • केवल-पठनीय: true
  • browser_press_key
    • शीर्षक: एक कुंजी दबाएँ
    • विवरण: कीबोर्ड पर एक कुंजी दबाएँ
    • पैरामीटर:
      • key (string): दबाने के लिए कुंजी का नाम या उत्पन्न करने के लिए एक वर्ण, जैसे ArrowLeft या a
    • केवल-पठनीय: false
  • browser_resize
    • शीर्षक: ब्राउज़र विंडो का आकार बदलें
    • विवरण: ब्राउज़र विंडो का आकार बदलें
    • पैरामीटर:
      • width (number): ब्राउज़र विंडो की चौड़ाई
      • height (number): ब्राउज़र विंडो की ऊँचाई
    • केवल-पठनीय: false
  • browser_run_code_unsafe
    • शीर्षक: Playwright कोड चलाएँ (असुरक्षित)
    • विवरण: Playwright कोड स्निपेट चलाएँ। असुरक्षित: Playwright सर्वर प्रक्रिया में मनमाना जावास्क्रिप्ट निष्पादित करता है और RCE-समतुल्य है।
    • पैरामीटर:
      • code (string, वैकल्पिक): निष्पादित करने के लिए Playwright कोड वाला एक जावास्क्रिप्ट फ़ंक्शन। इसे एकल तर्क, page के साथ आमंत्रित किया जाएगा, जिसका उपयोग आप किसी भी पेज इंटरैक्शन के लिए कर सकते हैं। उदाहरण के लिए: async (page) => { await page.getByRole('button', { name: 'Submit' }).click(); return await page.title(); }
      • filename (string, वैकल्पिक): निर्दिष्ट फ़ाइल से कोड लोड करें। यदि कोड और फ़ाइल नाम दोनों प्रदान किए गए हैं, तो कोड को अनदेखा कर दिया जाएगा।
    • केवल-पठनीय: false
  • browser_select_option
    • शीर्षक: विकल्प चुनें
    • विवरण: ड्रॉपडाउन में एक विकल्प चुनें
    • पैरामीटर:
      • element (string, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय तत्व विवरण
      • target (string): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
      • values (array): ड्रॉपडाउन में चयन करने के लिए मानों की सरणी। यह एकल मान या एकाधिक मान हो सकते हैं।
    • केवल-पठनीय: false
  • browser_snapshot
    • शीर्षक: पेज स्नैपशॉट
    • विवरण: वर्तमान पेज का एक्सेसिबिलिटी स्नैपशॉट कैप्चर करें, यह स्क्रीनशॉट से बेहतर है
    • पैरामीटर:
      • target (string, वैकल्पिक): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
      • filename (string, वैकल्पिक): स्नैपशॉट को प्रतिक्रिया में लौटाने के बजाय मार्कडाउन फ़ाइल में सहेजें।
      • depth (number, वैकल्पिक): स्नैपशॉट ट्री की गहराई सीमित करें
      • boxes (boolean, वैकल्पिक): स्नैपशॉट में प्रत्येक तत्व के बाउंडिंग बॉक्स को [box=x,y,width,height] के रूप में शामिल करें। निर्देशांक व्यूपोर्ट-सापेक्ष हैं, CSS पिक्सेल में (Element.getBoundingClientRect)
    • केवल-पठनीय: true
  • browser_take_screenshot
    • शीर्षक: स्क्रीनशॉट लें
    • विवरण: वर्तमान पेज का स्क्रीनशॉट लें। आप स्क्रीनशॉट के आधार पर कार्रवाई नहीं कर सकते, कार्रवाइयों के लिए browser_snapshot का उपयोग करें।
    • पैरामीटर:
      • element (string, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय तत्व विवरण
      • target (string, वैकल्पिक): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
      • type (string): स्क्रीनशॉट के लिए छवि प्रारूप। डिफ़ॉल्ट png है।
      • filename (string, वैकल्पिक): स्क्रीनशॉट सहेजने के लिए फ़ाइल नाम। यदि निर्दिष्ट नहीं है तो page-{timestamp}.{png|jpeg} पर डिफ़ॉल्ट होता है। आउटपुट निर्देशिका के भीतर रहने के लिए सापेक्ष फ़ाइल नामों को प्राथमिकता दें।
      • fullPage (boolean, वैकल्पिक): जब true, वर्तमान में दृश्यमान व्यूपोर्ट के बजाय पूर्ण स्क्रॉल करने योग्य पेज का स्क्रीनशॉट लेता है। तत्व स्क्रीनशॉट के साथ उपयोग नहीं किया जा सकता।
      • scale (string): छवि रिज़ॉल्यूशन स्केल। "css" CSS पिक्सेल में आकार का स्क्रीनशॉट तैयार करता है (छोटा, उपकरणों में सुसंगत)। "device" डिवाइस पिक्सेल का उपयोग करके उच्च-रिज़ॉल्यूशन स्क्रीनशॉट तैयार करता है (बड़ा, डिवाइस पिक्सेल अनुपात के लिए खाता है)। डिफ़ॉल्ट css है।
    • केवल-पठनीय: true
  • browser_type
    • शीर्षक: टेक्स्ट टाइप करें
    • विवरण: संपादन योग्य तत्व में टेक्स्ट टाइप करें
    • पैरामीटर:
      • element (string, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय तत्व विवरण
      • target (string): पेज स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
      • text (string): तत्व में टाइप करने के लिए टेक्स्ट
      • submit (boolean, वैकल्पिक): दर्ज किए गए टेक्स्ट को सबमिट करना है या नहीं (बाद में Enter दबाएँ)
      • slowly (boolean, वैकल्पिक): एक बार में एक वर्ण टाइप करना है या नहीं। पेज में की हैंडलर्स को ट्रिगर करने के लिए उपयोगी। डिफ़ॉल्ट रूप से संपूर्ण टेक्स्ट एक बार में भरा जाता है।
    • केवल-पठनीय: false
  • browser_wait_for
    • शीर्षक: प्रतीक्षा करें
    • विवरण: टेक्स्ट के प्रकट होने या गायब होने या एक निर्दिष्ट समय बीतने की प्रतीक्षा करें
    • पैरामीटर:
      • time (संख्या, वैकल्पिक): सेकंड में प्रतीक्षा करने का समय
      • text (स्ट्रिंग, वैकल्पिक): वह टेक्स्ट जिसकी प्रतीक्षा करनी है
      • textGone (स्ट्रिंग, वैकल्पिक): वह टेक्स्ट जिसके गायब होने की प्रतीक्षा करनी है
    • केवल-पठनीय: false
टैब प्रबंधन
  • browser_tabs
    • शीर्षक: टैब प्रबंधित करें
    • विवरण: ब्राउज़र टैब को सूचीबद्ध करें, बनाएँ, बंद करें या चुनें।
    • पैरामीटर:
      • action (स्ट्रिंग): निष्पादित करने के लिए ऑपरेशन
      • index (संख्या, वैकल्पिक): टैब इंडेक्स, बंद/चयन के लिए उपयोग किया जाता है। यदि बंद करने के लिए छोड़ दिया जाता है, तो वर्तमान टैब बंद हो जाता है।
      • url (स्ट्रिंग, वैकल्पिक): नए टैब में नेविगेट करने के लिए URL, नए के लिए उपयोग किया जाता है।
    • केवल-पठनीय: false
ब्राउज़र स्थापना
कॉन्फ़िगरेशन (--caps=config के माध्यम से ऑप्ट-इन)
  • browser_get_config
    • शीर्षक: कॉन्फ़िग प्राप्त करें
    • विवरण: CLI विकल्पों, पर्यावरण चर और कॉन्फ़िग फ़ाइल को मर्ज करने के बाद अंतिम हल किया गया कॉन्फ़िग प्राप्त करें।
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: true
नेटवर्क (--caps=network के माध्यम से ऑप्ट-इन)
  • browser_network_state_set
    • शीर्षक: नेटवर्क स्थिति सेट करें
    • विवरण: ब्राउज़र नेटवर्क स्थिति को ऑनलाइन या ऑफलाइन पर सेट करता है। ऑफलाइन होने पर, सभी नेटवर्क अनुरोध विफल हो जाएंगे।
    • पैरामीटर:
      • state (स्ट्रिंग): ऑफलाइन मोड का अनुकरण करने के लिए "offline" पर सेट करें, नेटवर्क कनेक्टिविटी बहाल करने के लिए "online" पर सेट करें
    • केवल-पठनीय: false
  • browser_route
    • शीर्षक: नेटवर्क अनुरोधों का मॉक करें
    • विवरण: URL पैटर्न से मेल खाने वाले नेटवर्क अनुरोधों का मॉक करने के लिए एक रूट सेट करें
    • पैरामीटर:
      • pattern (स्ट्रिंग): मिलान करने के लिए URL पैटर्न (जैसे, "/api/users", "/*.{png,jpg}")
      • status (संख्या, वैकल्पिक): लौटाने के लिए HTTP स्थिति कोड (डिफ़ॉल्ट: 200)
      • body (स्ट्रिंग, वैकल्पिक): प्रतिक्रिया मुख्य भाग (टेक्स्ट या JSON स्ट्रिंग)
      • contentType (स्ट्रिंग, वैकल्पिक): Content-Type हेडर (जैसे, "application/json", "text/html")
      • headers (सरणी, वैकल्पिक): "Name: Value" प्रारूप में जोड़ने के लिए हेडर
      • removeHeaders (स्ट्रिंग, वैकल्पिक): अनुरोध से हटाने के लिए हेडर नामों की अल्पविराम-पृथक सूची
    • केवल-पठनीय: false
  • browser_route_list
    • शीर्षक: नेटवर्क रूट सूचीबद्ध करें
    • विवरण: सभी सक्रिय नेटवर्क रूट सूचीबद्ध करें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: true
  • browser_unroute
    • शीर्षक: नेटवर्क रूट हटाएँ
    • विवरण: एक पैटर्न से मेल खाने वाले नेटवर्क रूट हटाएँ (या यदि कोई पैटर्न निर्दिष्ट नहीं है तो सभी रूट)
    • पैरामीटर:
      • pattern (स्ट्रिंग, वैकल्पिक): अनरूट करने के लिए URL पैटर्न (सभी रूट हटाने के लिए छोड़ दें)
    • केवल-पठनीय: false
संग्रहण (--caps=storage के माध्यम से ऑप्ट-इन)
  • browser_cookie_clear
    • शीर्षक: कुकीज़ साफ़ करें
    • विवरण: सभी कुकीज़ साफ़ करें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: false
  • browser_cookie_delete
    • शीर्षक: कुकी हटाएँ
    • विवरण: एक विशिष्ट कुकी हटाएँ
    • पैरामीटर:
      • name (स्ट्रिंग): हटाने के लिए कुकी का नाम
    • केवल-पठनीय: false
  • browser_cookie_get
    • शीर्षक: कुकी प्राप्त करें
    • विवरण: नाम से एक विशिष्ट कुकी प्राप्त करें
    • पैरामीटर:
      • name (स्ट्रिंग): प्राप्त करने के लिए कुकी का नाम
    • केवल-पठनीय: true
  • browser_cookie_list
    • शीर्षक: कुकीज़ सूचीबद्ध करें
    • विवरण: सभी कुकीज़ सूचीबद्ध करें (वैकल्पिक रूप से डोमेन/पथ द्वारा फ़िल्टर की गई)
    • पैरामीटर:
      • domain (स्ट्रिंग, वैकल्पिक): डोमेन द्वारा कुकीज़ फ़िल्टर करें
      • path (स्ट्रिंग, वैकल्पिक): पथ द्वारा कुकीज़ फ़िल्टर करें
    • केवल-पठनीय: true
  • browser_cookie_set
    • शीर्षक: कुकी सेट करें
    • विवरण: वैकल्पिक फ़्लैग (domain, path, expires, httpOnly, secure, sameSite) के साथ एक कुकी सेट करें
    • पैरामीटर:
      • name (स्ट्रिंग): कुकी का नाम
      • value (स्ट्रिंग): कुकी का मान
      • domain (स्ट्रिंग, वैकल्पिक): कुकी डोमेन
      • path (स्ट्रिंग, वैकल्पिक): कुकी पथ
      • expires (संख्या, वैकल्पिक): यूनिक्स टाइमस्टैम्प के रूप में कुकी समाप्ति
      • httpOnly (बूलियन, वैकल्पिक): क्या कुकी केवल HTTP है
      • secure (बूलियन, वैकल्पिक): क्या कुकी सुरक्षित है
      • sameSite (स्ट्रिंग, वैकल्पिक): कुकी SameSite विशेषता
    • केवल-पठनीय: false
  • browser_localstorage_clear
    • शीर्षक: localStorage साफ़ करें
    • विवरण: सभी localStorage साफ़ करें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: false
  • browser_localstorage_delete
    • शीर्षक: localStorage आइटम हटाएँ
    • विवरण: एक localStorage आइटम हटाएँ
    • पैरामीटर:
      • key (स्ट्रिंग): हटाने के लिए कुंजी
    • केवल-पठनीय: false
  • browser_localstorage_get
    • शीर्षक: localStorage आइटम प्राप्त करें
    • विवरण: कुंजी द्वारा एक localStorage आइटम प्राप्त करें
    • पैरामीटर:
      • key (स्ट्रिंग): प्राप्त करने के लिए कुंजी
    • केवल-पठनीय: true
  • browser_localstorage_list
    • शीर्षक: localStorage सूचीबद्ध करें
    • विवरण: सभी localStorage कुंजी-मान जोड़े सूचीबद्ध करें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: true
  • browser_localstorage_set
    • शीर्षक: localStorage आइटम सेट करें
    • विवरण: एक localStorage आइटम सेट करें
    • पैरामीटर:
      • key (स्ट्रिंग): सेट करने के लिए कुंजी
      • value (स्ट्रिंग): सेट करने के लिए मान
    • केवल-पठनीय: false
  • browser_sessionstorage_clear
    • शीर्षक: sessionStorage साफ़ करें
    • विवरण: सभी sessionStorage साफ़ करें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: false
  • browser_sessionstorage_delete
    • शीर्षक: sessionStorage आइटम हटाएँ
    • विवरण: एक sessionStorage आइटम हटाएँ
    • पैरामीटर:
      • key (स्ट्रिंग): हटाने के लिए कुंजी
    • केवल-पठनीय: false
  • browser_sessionstorage_get
    • शीर्षक: sessionStorage आइटम प्राप्त करें
    • विवरण: कुंजी द्वारा एक sessionStorage आइटम प्राप्त करें
    • पैरामीटर:
      • key (स्ट्रिंग): प्राप्त करने के लिए कुंजी
    • केवल-पठनीय: true
  • browser_sessionstorage_list
    • शीर्षक: sessionStorage सूचीबद्ध करें
    • विवरण: सभी sessionStorage कुंजी-मान जोड़े सूचीबद्ध करें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: true
  • browser_sessionstorage_set
    • शीर्षक: sessionStorage आइटम सेट करें
    • विवरण: एक sessionStorage आइटम सेट करें
    • पैरामीटर:
      • key (स्ट्रिंग): सेट करने के लिए कुंजी
      • value (स्ट्रिंग): सेट करने के लिए मान
    • केवल-पठनीय: false
  • browser_set_storage_state
    • शीर्षक: संग्रहण स्थिति पुनर्स्थापित करें
    • विवरण: किसी फ़ाइल से संग्रहण स्थिति (कुकीज़, स्थानीय संग्रहण) पुनर्स्थापित करें। यह पुनर्स्थापित करने से पहले मौजूदा कुकीज़ और स्थानीय संग्रहण को साफ़ करता है।
    • पैरामीटर:
      • filename (स्ट्रिंग): पुनर्स्थापित करने के लिए संग्रहण स्थिति फ़ाइल का पथ
    • केवल-पठनीय: false
  • browser_storage_state
    • शीर्षक: संग्रहण स्थिति सहेजें
    • विवरण: बाद में पुन: उपयोग के लिए संग्रहण स्थिति (कुकीज़, स्थानीय संग्रहण) को एक फ़ाइल में सहेजें
    • पैरामीटर:
      • filename (स्ट्रिंग, वैकल्पिक): संग्रहण स्थिति सहेजने के लिए फ़ाइल का नाम। यदि निर्दिष्ट नहीं है तो storage-state-{timestamp}.json पर डिफ़ॉल्ट होता है।
    • केवल-पठनीय: true
DevTools (--caps=devtools के माध्यम से ऑप्ट-इन)
  • browser_annotate
    • शीर्षक: वर्तमान पृष्ठ की व्याख्या करें
    • विवरण: वर्तमान पृष्ठ के लिए एनोटेशन मोड में Playwright डैशबोर्ड खोलें और उपयोगकर्ता द्वारा एनोटेशन खींचने की प्रतीक्षा करें। एनोटेटेड स्क्रीनशॉट, ARIA स्नैपशॉट और एनोटेशन की सूची लौटाता है।
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: true
  • browser_hide_highlight
    • शीर्षक: तत्व हाइलाइट छिपाएँ
    • विवरण: तत्व के लिए पहले जोड़े गए हाइलाइट ओवरले को हटा दें।
    • पैरामीटर:
      • element (स्ट्रिंग, वैकल्पिक): हाइलाइट जोड़ते समय उपयोग किया गया मानव-पठनीय तत्व विवरण; browser_highlight को दिए गए मान से मेल खाना चाहिए।
      • target (स्ट्रिंग, वैकल्पिक): पृष्ठ स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
    • केवल-पठनीय: true
  • browser_highlight
    • शीर्षक: तत्व हाइलाइट करें
    • विवरण: पृष्ठ पर तत्व के चारों ओर एक स्थायी हाइलाइट ओवरले दिखाएँ।
    • पैरामीटर:
      • element (स्ट्रिंग, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय तत्व विवरण
      • target (स्ट्रिंग): पृष्ठ स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
      • style (स्ट्रिंग, वैकल्पिक): हाइलाइट ओवरले पर लागू अतिरिक्त इनलाइन CSS, जैसे "outline: 2px dashed red"।
    • केवल-पठनीय: true
  • browser_resume
    • शीर्षक: रुका हुआ स्क्रिप्ट निष्पादन फिर से शुरू करें
    • विवरण: स्क्रिप्ट निष्पादन रुकने के बाद इसे फिर से शुरू करें। जब step को true पर सेट करके कॉल किया जाता है, तो अगली कार्रवाई से पहले निष्पादन फिर से रुक जाएगा।
    • पैरामीटर:
      • step (बूलियन, वैकल्पिक): जब true, तो अगली कार्रवाई से पहले निष्पादन फिर से रुक जाएगा, जिससे चरण-दर-चरण डिबगिंग की अनुमति मिलती है।
      • location (स्ट्रिंग, वैकल्पिक): एक विशिष्ट : पर निष्पादन रोकें, जैसे "example.spec.ts:42"।
    • केवल-पठनीय: false
  • browser_start_tracing
    • शीर्षक: ट्रेसिंग शुरू करें
    • विवरण: ट्रेस रिकॉर्डिंग शुरू करें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: true
  • browser_start_video
    • शीर्षक: वीडियो शुरू करें
    • विवरण: वीडियो रिकॉर्डिंग शुरू करें
    • पैरामीटर:
      • filename (स्ट्रिंग, वैकल्पिक): वीडियो सहेजने के लिए फ़ाइल नाम।
      • size (ऑब्जेक्ट, वैकल्पिक): वीडियो का आकार
    • केवल-पठनीय: true
  • browser_stop_tracing
    • शीर्षक: ट्रेसिंग रोकें
    • विवरण: ट्रेस रिकॉर्डिंग रोकें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: true
  • browser_stop_video
    • शीर्षक: वीडियो रोकें
    • विवरण: वीडियो रिकॉर्डिंग रोकें
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: true
  • browser_video_chapter
    • शीर्षक: वीडियो अध्याय
    • विवरण: वीडियो रिकॉर्डिंग में एक अध्याय मार्कर जोड़ें। धुंधली पृष्ठभूमि के साथ एक पूर्ण-स्क्रीन अध्याय कार्ड दिखाता है।
    • पैरामीटर:
      • title (स्ट्रिंग): अध्याय का शीर्षक
      • description (स्ट्रिंग, वैकल्पिक): अध्याय का विवरण
      • duration (संख्या, वैकल्पिक): अध्याय कार्ड दिखाने के लिए मिलीसेकंड में अवधि
    • केवल-पठनीय: true
  • browser_video_hide_actions
    • शीर्षक: कार्रवाई ओवरले छिपाएँ
    • विवरण: पृष्ठ पर की गई कार्रवाइयों की व्याख्या करना बंद करें।
    • पैरामीटर: कोई नहीं
    • केवल-पठनीय: true
  • browser_video_show_actions
    • शीर्षक: कार्रवाई ओवरले दिखाएँ
    • विवरण: पृष्ठ पर की जाने वाली बाद की कार्रवाइयों को एक कॉलआउट के साथ व्याख्यायित करें जो कार्रवाई का नाम देता है और लक्ष्य तत्व को हाइलाइट करता है। वीडियो रिकॉर्डिंग या स्क्रीनकास्टिंग के दौरान उपयोगी।
    • पैरामीटर:
      • duration (संख्या, वैकल्पिक): प्रत्येक कार्रवाई एनोटेशन स्क्रीन पर कितनी देर तक रहता है, मिलीसेकंड में। डिफ़ॉल्ट 500 है।
      • position (स्ट्रिंग, वैकल्पिक): पृष्ठ के सापेक्ष कार्रवाई शीर्षक कहाँ रखना है। डिफ़ॉल्ट top-right है।
      • cursor (स्ट्रिंग, वैकल्पिक): पॉइंटर कार्रवाइयों के लिए कर्सर सजावट। "pointer" (डिफ़ॉल्ट) पिछले कार्रवाई बिंदु से अगले तक एक माउस पॉइंटर को एनिमेट करता है; "none" कर्सर सजावट को अक्षम करता है।
    • केवल-पठनीय: true
निर्देशांक-आधारित (--caps=vision के माध्यम से ऑप्ट-इन)
  • browser_mouse_click_xy
    • शीर्षक: क्लिक करें
    • विवरण: दिए गए स्थान पर माउस बटन क्लिक करें
    • पैरामीटर:
      • x (संख्या): X निर्देशांक
      • y (संख्या): Y निर्देशांक
      • button (स्ट्रिंग, वैकल्पिक): क्लिक करने के लिए बटन, डिफ़ॉल्ट बायाँ
      • clickCount (संख्या, वैकल्पिक): क्लिक की संख्या, डिफ़ॉल्ट 1
      • delay (संख्या, वैकल्पिक): माउस डाउन और माउस अप के बीच प्रतीक्षा करने का समय मिलीसेकंड में, डिफ़ॉल्ट 0
    • केवल-पठनीय: false
  • browser_mouse_down
    • शीर्षक: माउस डाउन दबाएँ
    • विवरण: माउस डाउन दबाएँ
    • पैरामीटर:
      • button (स्ट्रिंग, वैकल्पिक): दबाने के लिए बटन, डिफ़ॉल्ट बायाँ
    • केवल-पठनीय: false
  • browser_mouse_drag_xy
    • शीर्षक: माउस खींचें
    • विवरण: बाएँ माउस बटन को दिए गए स्थान पर खींचें
    • पैरामीटर:
      • startX (संख्या): प्रारंभ X निर्देशांक
      • startY (संख्या): प्रारंभ Y निर्देशांक
      • endX (संख्या): अंत X निर्देशांक
      • endY (संख्या): अंत Y निर्देशांक
    • केवल-पठनीय: false
  • browser_mouse_move_xy
    • शीर्षक: माउस हिलाएँ
    • विवरण: माउस को दिए गए स्थान पर ले जाएँ
    • पैरामीटर:
      • x (संख्या): X निर्देशांक
      • y (संख्या): Y निर्देशांक
    • केवल-पठनीय: false
  • browser_mouse_up
    • शीर्षक: माउस अप दबाएँ
    • विवरण: माउस अप दबाएँ
    • पैरामीटर:
      • button (स्ट्रिंग, वैकल्पिक): दबाने के लिए बटन, डिफ़ॉल्ट बायाँ
    • केवल-पठनीय: false
  • browser_mouse_wheel
    • शीर्षक: माउस व्हील स्क्रॉल करें
    • विवरण: माउस व्हील स्क्रॉल करें
    • पैरामीटर:
      • deltaX (संख्या): X डेल्टा
      • deltaY (संख्या): Y डेल्टा
    • केवल-पठनीय: false
PDF निर्माण (--caps=pdf के माध्यम से ऑप्ट-इन)
  • browser_pdf_save
    • शीर्षक: PDF के रूप में सहेजें
    • विवरण: पृष्ठ को PDF के रूप में सहेजें
    • पैरामीटर:
      • filename (स्ट्रिंग, वैकल्पिक): PDF सहेजने के लिए फ़ाइल का नाम। यदि निर्दिष्ट नहीं है तो page-{timestamp}.pdf पर डिफ़ॉल्ट होता है। आउटपुट निर्देशिका के भीतर रहने के लिए सापेक्ष फ़ाइल नामों को प्राथमिकता दें।
    • केवल-पठनीय: true
परीक्षण अभिकथन (--caps=testing के माध्यम से ऑप्ट-इन)
  • browser_generate_locator
    • शीर्षक: तत्व के लिए लोकेटर बनाएँ
    • विवरण: परीक्षणों में उपयोग के लिए दिए गए तत्व के लिए लोकेटर उत्पन्न करें
    • पैरामीटर:
      • element (स्ट्रिंग, वैकल्पिक): तत्व के साथ इंटरैक्ट करने की अनुमति प्राप्त करने के लिए उपयोग किया जाने वाला मानव-पठनीय तत्व विवरण
      • target (स्ट्रिंग): पृष्ठ स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ, या एक अद्वितीय तत्व चयनकर्ता
    • केवल-पठनीय: true
  • browser_verify_element_visible
    • शीर्षक: तत्व दृश्यमान सत्यापित करें
    • विवरण: सत्यापित करें कि तत्व पृष्ठ पर दृश्यमान है
    • पैरामीटर:
      • role (स्ट्रिंग): तत्व की भूमिका। स्नैपशॉट में इस तरह पाया जा सकता है: - {ROLE} "Accessible Name":
      • accessibleName (स्ट्रिंग): तत्व का सुलभ नाम। स्नैपशॉट में इस तरह पाया जा सकता है: - role "{ACCESSIBLE_NAME}"
    • केवल-पठनीय: false
  • browser_verify_list_visible
    • शीर्षक: सूची दृश्यमान सत्यापित करें
    • विवरण: सत्यापित करें कि सूची पृष्ठ पर दृश्यमान है
    • पैरामीटर:
      • element (स्ट्रिंग): मानव-पठनीय सूची विवरण
      • target (स्ट्रिंग): सटीक लक्ष्य तत्व संदर्भ जो सूची की ओर इशारा करता है
      • items (सरणी): सत्यापित करने के लिए आइटम
    • केवल-पठनीय: false
  • browser_verify_text_visible
    • शीर्षक: पाठ दृश्यमान सत्यापित करें
    • विवरण: सत्यापित करें कि पाठ पृष्ठ पर दृश्यमान है। यदि संभव हो तो browser_verify_element_visible को प्राथमिकता दें।
    • पैरामीटर:
      • text (स्ट्रिंग): सत्यापित करने के लिए पाठ। स्नैपशॉट में इस तरह पाया जा सकता है: - role "Accessible Name": {TEXT} या इस तरह: - text: {TEXT}
    • केवल-पठनीय: false
  • browser_verify_value
    • शीर्षक: मान सत्यापित करें
    • विवरण: तत्व मान सत्यापित करें
    • पैरामीटर:
      • type (स्ट्रिंग): तत्व का प्रकार
      • element (स्ट्रिंग): मानव-पठनीय तत्व विवरण
      • target (स्ट्रिंग): पृष्ठ स्नैपशॉट से सटीक लक्ष्य तत्व संदर्भ
      • value (स्ट्रिंग): सत्यापित करने के लिए मान। चेकबॉक्स के लिए, "true" या "false" का उपयोग करें।
    • केवल-पठनीय: false