Playwright MCP로 작업할 때 매번 새로운 빈 Chrome 프로필이 열려 불편하지 않으셨나요?
평소 로그인해둔 GitHub, 사내 어드민, Google 계정… 이런 세션이 전부 없는 상태로 시작하다 보니 AI를 이용한 테스트 자동화가 시작되기 전부터 손이 많이 갔습니다.
정리해 보면 이런 문제였습니다.
- 테스트 대상 사이트에 로그인이 필요한 경우 매번 로그인부터 해야 합니다
- SSO/2FA가 걸린 사내 시스템은 자동화 자체가 어렵습니다
- 평소 쓰던 확장 프로그램, 북마크, 쿠키도 전부 없는 상태입니다
참고로 매번 새 프로필이 뜨는 건 워크스페이스마다 브라우저 환경을 격리하려는 의도된 동작이라, --user-data-dir로 평소 프로필을 직접 가리키는 우회는 권장되지 않습니다.
그래서 다른 방향의 해법으로 등장한 것이 Playwright MCP Bridge 라는 Chrome 확장 프로그램이에요. MCP 서버가 새 브라우저를 띄우는 대신, 이미 열려 있는 내 Chrome 탭에 그대로 붙어 주거든요.
공식 문서도 같은 표현을 씁니다.
“The Playwright Extension connects to your existing browser tabs, reusing your logged-in sessions, cookies, and installed extensions.”
— Playwright MCP – Browser Extension
설정 방법
TIP
아래 과정이 번거롭다면 글 하단에 한 번에 적용하는 프롬프트를 준비해 두었어요.
Claude Code에 그대로 붙여 넣으면 토큰 입력부터 플러그인 감지, 설정 파일 수정, 재시작, 동작 확인까지 단계별로 알아서 진행됩니다.
1. Chrome 확장 프로그램 설치
Chrome 웹 스토어에서 Playwright MCP Bridge 를 설치합니다.
Playwright 공식 문서의 Browser Extension 페이지도 같은 웹 스토어 링크를 안내합니다.

Chrome 웹 스토어에서 한 번에 설치할 수 있습니다.
TIP
2025년 8월 Debbie O’Brien의 글에는 압축 파일을 받아 풀고 개발자 모드를 켠 뒤 “압축해제된 확장 프로그램 로드”를 거쳐야 한다고 안내되어 있는데, 지금은 그 과정이 필요하지 않습니다.
설치 후 확장 프로그램 아이콘을 클릭하면 PLAYWRIGHT_MCP_EXTENSION_TOKEN 값이 표시됩니다.
이 값을 복사해 두세요.


확장 아이콘을 누르면 토큰이 보입니다. 이 값을 그대로 MCP 설정의 env에 넣어 둡니다.
MCP 서버 설정의 env에 이 토큰을 함께 넣어 두면, 매번 연결을 새로 승인하지 않아도 확장이 MCP 서버를 식별해 자동으로 붙어 줍니다.
2. 기존 Playwright 플러그인 확인
WARNING
Claude Code의 플러그인 마켓플레이스(claude-plugins-official 등)에서 Playwright 플러그인을 이미 설치했다면, 같은 이름의 MCP가 이미 등록되어 있는 상태입니다.
이때 ~/.claude.json이나 .mcp.json에 같은 이름(playwright)으로 MCP 설정을 추가해도 플러그인 설정이 우선순위에서 이겨서 새 설정이 그대로 무시됩니다. 도구는 정상적으로 호출되지만 --extension 플래그가 빠진 기본 버전이 돌고 있는 상태라, “왜 자꾸 새 창이 뜨지?” 하면서 한참 헤멜 수 있어요.
먼저 플러그인 설치 여부부터 확인합니다.
claude plugin list목록에 playwright가 있으면 다음 단계로 넘어가면 됩니다. 없다면 두 가지 선택지가 있습니다.
- 공식 플러그인 설치: 마켓플레이스에서 Playwright 플러그인을 설치하고 그 플러그인의 설정을 수정합니다. 자동 업데이트가 되는 장점이 있습니다.
- 사용자 설정으로 직접 추가: 플러그인 없이
~/.claude.json또는.mcp.json에 직접 MCP 설정을 추가합니다. dotfiles로 관리하기 좋습니다.
3. MCP 설정 추가
Case A: Playwright 플러그인이 이미 설치되어 있다면
플러그인의 .mcp.json을 직접 수정합니다. 위치는 보통 ~/.claude/plugins/ 하위에 있는데, 정확한 경로는 환경마다 다르니 직접 찾아야 합니다. Claude Code에 “Playwright 플러그인의 .mcp.json 위치 찾아줘”라고 시키면 알아서 찾아 줍니다.
기존 설정에 --extension 플래그와 토큰만 추가하면 됩니다.
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest", "--extension"],
"env": {
"PLAYWRIGHT_MCP_EXTENSION_TOKEN": "여기에-복사한-토큰"
}
}
}
}WARNING
플러그인이 업데이트되거나 재설치되면 이 변경 사항이 사라질 수 있습니다. 그럴 때는 다시 수정해 주면 되는데, 글 하단의 자동화 프롬프트를 다시 돌리는 편이 가장 빠르더라고요.
Case B: 플러그인 없이 직접 설정한다면
설정 위치는 두 가지 중에 고르면 됩니다.
- 프로젝트 단위: 프로젝트 루트의
.mcp.json - 글로벌:
~/.claude.json
설정 내용은 위와 동일합니다.
어느 경우든 핵심은 --extension 플래그입니다. microsoft/playwright-mcp README Configuration 섹션에서 이 플래그를 “Connect to a running browser instance (Edge/Chrome only). Requires the ‘Playwright Extension’ to be installed.”로 정의해 두었는데, 풀어 말하면 새 브라우저를 띄우지 않고 이미 떠 있는 Chrome/Edge에 확장 프로그램을 통해 붙으라는 모드입니다. 이 플래그가 빠지면 MCP는 본래 동작인 “새 프로필 + 새 창”으로 돌아갑니다.
4. Claude Code 재시작
설정이 적용되려면 재시작이 필요합니다.
# 현재 세션 종료 (Ctrl+C 두 번 또는 /exit)
# 같은 디렉토리에서 다시 실행
claude
# MCP 서버 등록 확인
claude mcp list목록에 playwright가 보이면 정상입니다.
5. 동작 확인
평소 쓰는 Chrome 프로필을 열어둔 상태로, Claude Code에서 간단한 명령을 내려봅니다.
“Playwright로 https://github.com 페이지를 열어서 제목을 알려줘”
첫 호출이라면 Chrome에 어느 탭에 연결할지 선택하는 페이지가 뜹니다.
만약 새 Chrome 창이 따로 열린다면 확장 프로그램이 인식되지 않은 거예요. 이때 점검할 항목은 다음과 같습니다.
chrome://extensions에서 Playwright MCP Bridge가 활성화되어 있는지- 토큰 값이 설정 파일에 정확히 들어갔는지
- 실제로 어느 설정 파일이 적용되고 있는지 (플러그인이 설치되어 있다면 사용자 설정이 가려지고 있을 가능성)
- Claude Code 재시작을 한 번 더 시도
실제로 써 보니
가장 체감되는 건 사내 시스템 자동화였어요. SSO 로그인이 걸린 어드민 페이지를 자동화하려면 원래는 세션을 열 때 마다 로그인 흐름을 직접 처리하거나 storageState를 따로 만들어야 했는데, 이제는 평소처럼 로그인해둔 탭을 그대로 쓰면 끝입니다.
Debbie O’Brien도 같은 가치를 강조해요.
“Test real user sessions without worrying about logging-in… Run automation against enterprise apps that require authentication.”
— dev.to, Debbie O’Brien
추가로 좋았던 점은 이렇습니다.
- 평소 쓰던 확장 프로그램(개발자 도구, React DevTools 등)도 그대로 동작합니다
- 쿠키와 세션이 유지되니 OTP 같은 것을 다시 받을 필요가 없습니다
- 자동화 도중에 직접 탭을 조작하는 것도 가능해요
주의할 점도 있습니다.
- 확장은 Chrome 또는 Edge 같은 Chromium 계열에서만 동작합니다. README의
--extension플래그 정의가 “Edge/Chrome only”로 못 박혀 있고, Firefox·WebKit은 일반--browser옵션으로만 띄울 수 있어요 (microsoft/playwright-mcp README) - 평소 쓰는 프로필이다 보니 자동화 도중 실수로 중요한 동작이 일어날 수 있어요. 민감한 작업이라면 별도 Chrome 프로필을 만들어 거기에 확장 프로그램을 설치하는 방법도 고려해 볼 만합니다
- 플러그인 마켓플레이스의 Playwright를 쓰고 있다면, 사용자 설정에 같은 이름으로 추가해도 적용되지 않는다는 점을 기억해 두세요
한 번에 적용하는 프롬프트
같은 설정을 매번 반복하기 번거로워서, Claude Code에 그대로 붙여 넣으면 단계별로 진행해 주는 프롬프트를 만들어 두었습니다.
토큰만 준비해 두고 아래 프롬프트를 붙여 넣으면 됩니다. 플러그인 설치 여부도 자동으로 감지해서 적절한 위치에 설정을 추가해 줍니다.
# Connect Playwright MCP to Existing Chrome Profile
I want to fix the issue where Playwright MCP launches a fresh Chrome profile every time, which means I can't use my logged-in sessions. Please configure it to connect to my existing Chrome profile via the Chrome Web Store extension method.
## Steps
### Step 1: Guide me to install the Chrome extension
Please ask me the following in Korean:
- Chrome 웹 스토어에서 Playwright MCP Bridge 확장 프로그램을 설치해주세요:
https://chromewebstore.google.com/detail/playwright-mcp-bridge/mmlmfjhmonkocbjadbfplnigmagldckm
- 설치 후 Chrome 툴바의 확장 프로그램 아이콘을 클릭하면 `PLAYWRIGHT_MCP_EXTENSION_TOKEN` 값이 표시됩니다.
- 그 토큰 값을 복사해서 채팅에 붙여넣어 주세요.
**Important: Wait until I provide the token before moving to the next step.** Do not proceed without it.
### Step 2: Detect existing Playwright plugin
Before deciding where to apply the config, check whether a Playwright plugin from the Claude Code plugin marketplace is already installed. This matters because plugin-provided MCP servers take priority over user-defined ones with the same name, which would cause the new config to be silently ignored.
Run the following to detect installed plugins:
```bash
claude plugin list
```
Look for any plugin named `playwright` (typically from `claude-plugins-official` marketplace).
Branch based on the result:
#### Case A: Playwright plugin is already installed
Inform me in Korean:
> Playwright 플러그인이 이미 설치되어 있어서, 사용자 설정(`~/.claude.json` 또는 `.mcp.json`)에 같은 이름으로 추가하면 플러그인 설정에 가려져 적용되지 않습니다. 따라서 **플러그인의 `.mcp.json`을 직접 수정**하는 방식으로 진행하겠습니다.
Then:
1. Locate the plugin's `.mcp.json`. Typically under `~/.claude/plugins/` or similar — find the actual path on this machine.
2. Show me the current content and ask for confirmation before editing.
3. Modify the `playwright` entry to add `--extension` to args and the `PLAYWRIGHT_MCP_EXTENSION_TOKEN` env var while preserving any other existing settings.
Resulting config should look like:
```json
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest", "--extension"],
"env": {
"PLAYWRIGHT_MCP_EXTENSION_TOKEN": "<token-I-provided>"
}
}
}
}
```
Also warn me in Korean:
> ⚠️ 플러그인이 업데이트되거나 재설치되면 이 변경 사항이 사라질 수 있습니다. 그 경우 이 프롬프트를 다시 실행하면 됩니다.
Skip Step 3 (which is for non-plugin installs) and go directly to Step 4.
#### Case B: Playwright plugin is NOT installed
Ask me in Korean:
> Playwright MCP를 설치하는 방법은 두 가지입니다. 어느 쪽으로 진행할까요?
>
> 1. **공식 플러그인 설치**: `claude-plugins-official` 마켓플레이스의 playwright 플러그인을 설치합니다. 플러그인 시스템으로 자동 업데이트가 가능합니다.
> 2. **사용자 설정으로 직접 추가**: 플러그인 없이 `~/.claude.json` 또는 프로젝트의 `.mcp.json`에 직접 MCP 설정을 추가합니다. dotfiles 등으로 관리하기 쉽습니다.
Wait for my answer.
- If I choose option 1: guide me through installing the plugin first (e.g., via `/plugin` or the appropriate command), then once installed, treat it as Case A and modify the plugin's `.mcp.json`.
- If I choose option 2: proceed to Step 3.
### Step 3: Ask me where to apply the config (only for Case B option 2)
Ask me in Korean which location to add the MCP config to:
- **프로젝트 단위 설정**: 현재 프로젝트 루트의 `.mcp.json`에 추가 (해당 프로젝트에서만 사용)
- **사용자 글로벌 설정**: `~/.claude.json`에 추가 (모든 프로젝트에서 사용)
Wait for my answer, then add or update the config in that file:
- If the file does not exist, create it.
- If it exists, read the current contents and add a `playwright` entry under `mcpServers`, or overwrite it if one already exists.
- Leave any other MCP server configs untouched.
Config to add:
```json
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["@playwright/mcp@latest", "--extension"],
"env": {
"PLAYWRIGHT_MCP_EXTENSION_TOKEN": "<token-I-provided>"
}
}
}
}
```
After applying, verify the file is valid JSON.
### Step 4: Restart Claude Code
Tell me in Korean to restart Claude Code so the config takes effect:
- 현재 Claude Code 세션을 종료한 뒤(`Ctrl+C` 두 번 또는 `/exit` 입력), 동일한 디렉토리에서 다시 실행해주세요:
```bash
claude
```
- 재시작 후 MCP 서버가 정상 등록되었는지 확인하려면:
```bash
claude mcp list
```
목록에 `playwright`가 보이면 정상입니다.
Then ask me explicitly: **"재시작 하셨나요? 완료하셨다면 알려주세요."**
Wait for my confirmation before proceeding to Step 5.
### Step 5: Verify Playwright actually opens
Once I confirm the restart, walk me through a verification flow in Korean:
1. 평소 사용하는 Chrome 프로필이 열려 있는지 확인해주세요. (열려있지 않다면 먼저 열어주세요.)
2. 다음과 같이 간단한 테스트 명령을 내려달라고 안내해주세요:
> "Playwright로 https://github.com 페이지를 열어서 제목을 알려줘"
3. 명령 실행 시 다음 흐름이 나타나는지 확인해주세요:
- 첫 호출이라면 어느 탭에 연결할지 선택하는 페이지가 Chrome에 뜸
- 작업할 탭을 선택하면 해당 탭에서 페이지 이동이 일어남
- 새 Chrome 창이 따로 뜨지 않고, 평소 쓰던 프로필 안에서 동작함
4. 만약 새 Chrome 창이 따로 열린다면 확장 프로그램이 제대로 인식되지 않은 것이므로:
- Chrome 확장 프로그램 페이지(`chrome://extensions`)에서 Playwright MCP Bridge가 활성화되어 있는지 확인
- 토큰 값이 설정 파일에 정확히 들어갔는지 확인
- 실제 실행 중인 MCP 프로세스가 어떤 설정 파일에서 시작되었는지 확인 (플러그인 vs 사용자 설정)
- Claude Code를 다시 한 번 재시작
If anything fails, help me debug based on the symptom.
### Step 6: Final notes
Once verification succeeds, share the following with me in Korean:
- 사용 시에는 평소 쓰던 Chrome 프로필이 열려 있는 상태여야 합니다.
- 처음 Playwright MCP를 호출하면 어느 탭에 연결할지 선택하는 페이지가 뜹니다. 작업하려는 탭을 선택하세요.
- SSO/2FA가 필요한 사내 시스템도 이미 로그인된 세션을 그대로 활용할 수 있습니다.
## Ground rules
- Do not move to the next step until I respond.
- The token, plugin choice, and config location must come from me directly.
- All user-facing messages (questions, instructions, final notes) must be in Korean. Internal reasoning and tool usage can be in English.
- When a Playwright plugin is detected, prefer modifying its config directly to avoid the silent override problem caused by name collision.마무리
확장 프로그램 방식으로 바꾸니 MCP가 평소 쓰던 브라우저의 일부처럼 자연스럽게 붙어서, 사내 시스템 자동화처럼 인증이 까다로운 작업이 한결 수월해졌어요.
같은 번거로움 겪고 계신 분께 도움이 되었으면 좋겠습니다 :)
참고
본문에서 인용·참조한 자료입니다. 모두 2026년 5월 7일 기준으로 확인했습니다.
- microsoft/playwright-mcp 공식 README — github.com/microsoft/playwright-mcp
- User profile / Browser Extension 섹션,
--extension플래그 정의
- User profile / Browser Extension 섹션,
- Playwright MCP 공식 문서, Browser Extension 페이지 — playwright.dev/mcp/configuration/browser-extension
- 확장 프로그램 동작 방식, Chrome 웹 스토어 설치 안내
- Debbie O’Brien, “Testing in a Logged-In State with the Playwright MCP Browser Extension” (dev.to, 2025-08-21) — dev.to/debs_obrien/…
- 초기 압축 해제 설치 방식, 사내 시스템 자동화 사용 사례