MCP Chrome Server について
MCP Chrome Serverは、MCP経由でブラウザーを操作したい人向けのChrome自動化サーバーです。ブラウザー操作、ウェブログイン、要素操作に対応し、CAPTCHAや二要素認証も扱います。
主な機能
- 01ブラウザーの起動・終了・移動
- 02ウェブログインの自動化
- 03要素のクリックとテキスト入力
- 04CAPTCHAと二要素認証の検出
- 05システムキーチェーンでの認証情報管理
活用シーン
- 01ウェブサイトのログイン手順の自動化
- 02ページへの移動と要素の操作
- 03ログイン時のCAPTCHAや二要素認証への対応
MCP 対応
MCPクライアントにChrome操作、ウェブログイン、要素操作のツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Chrome サーバー
ブラウザーの自動化を行う、MCP(Model-Controller-Prompt)ベースの Chrome サーバーです。
インストール
前提条件
- Python 3.12
- Google Chrome ブラウザーがインストールされていること
- uv(Python パッケージインストーラー)または Docker
Smithery 経由でインストール
npx -y @smithery/cli install @dlwjdtn535/mcp-chrome-server --client claude
設定
お使いの環境に合わせて、次の設定方法からいずれかを選択してください。
1. uv を使用する(推奨)
Windows の設定:
{
"mcpServers": {
"mcp-chrome-server": {
"command": "uv",
"args": [
"run",
"--directory",
"%LOCALAPPDATA%\\Programs\\mcp-chrome-server\\src",
"mcp-chrome-server"
],
"env": {
"CHROME_PROFILE_PATH": "%LOCALAPPDATA%\\Google\\Chrome\\User Data"
}
}
}
}
macOS の設定:
{
"mcpServers": {
"mcp-chrome-server": {
"command": "uv",
"args": [
"run",
"--directory",
"/usr/local/bin/mcp-chrome-server/src",
"mcp-chrome-server"
],
"env": {
"CHROME_PROFILE_PATH": "$HOME/Library/Application Support/Google/Chrome"
}
}
}
}
Linux の設定:
{
"mcpServers": {
"mcp-chrome-server": {
"command": "uv",
"args": [
"run",
"--directory",
"/usr/local/bin/mcp-chrome-server/src",
"mcp-chrome-server"
],
"env": {
"CHROME_PROFILE_PATH": "$HOME/.config/google-chrome"
}
}
}
}
設定
Chrome プロファイルのパス
各オペレーティングシステムの Chrome プロファイルのデフォルトパス:
| OS | パス |
|---|---|
| Windows | %LOCALAPPDATA%\Google\Chrome\User Data |
| macOS | ~/Library/Application Support/Google/Chrome |
| Linux | ~/.config/google-chrome |
重要な注意事項
- 自動化サーバーを起動する前に、実行中の Chrome をすべて終了してください
- Chrome プロファイルディレクトリに適切なアクセス権があることを確認してください
- Docker を使用する場合は、ボリュームのマウントパスがシステムの Chrome プロファイルパスと一致していることを確認してください
認証情報の管理
システムのキーチェーンを使用して、ログイン情報を安全に保存、管理します:
# Save credentials
result = tool_save_credentials(
site="example.com",
username="your_username",
password="your_password"
)
# Retrieve saved credentials
result = tool_get_credentials(
site="example.com",
username="your_username"
)
主な機能
ブラウザーの制御
# Open browser
result = tool_open_browser()
# Navigate to URL
result = tool_navigate(url="https://example.com")
# Close browser
result = tool_close_browser()
Web ログイン
result = tool_web_login(
url="https://example.com/login",
credentials={
"username": "your_username",
"password": "your_password"
},
selectors={
"username": "#id",
"password": "#pw",
"submit": ".login-button"
}
)
特別な処理:
- CAPTCHA が検出された場合、ユーザーが解決するまで待機します
- 2 要素認証を自動的に検出します
- ログイン失敗の状況を詳細に分析します
要素の操作
# Click element
result = tool_click(selector=".button")
# Type text
result = tool_type(
selector="#input-field",
text="Hello, World!"
)
# Get text
result = tool_get_text(selector=".content")
# Get multiple elements
result = tool_get_elements(selector=".items")
重要な考慮事項
-
Chrome プロファイルの使用
- プロファイルパスが正しく設定されていることを確認します
- そのプロファイルを使用している他の Chrome ウィンドウをすべて閉じます
-
自動化の検出防止
- 自然なユーザーの動作をシミュレートします
- ログイン試行の間に適切な待機時間を設けます
-
セキュリティ
- 重要な認証情報には必ずシステムのキーチェーンを使用してください
- 認証情報を環境変数や設定ファイルに直接含めないでください
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。