browser-console-mcp 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/bin/browser-mcp-server.js +75 -0
- package/bin/cli.js +65 -0
- package/bin/copy-html2canvas.js +51 -0
- package/dist/browser/browser-inject.js +34 -0
- package/dist/browser/browser-mcp-server.js +718 -0
- package/dist/browser/index.d.ts +10 -0
- package/dist/browser/index.js +2 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/client/browser-console-mcp.js +2 -0
- package/dist/client/browser-console-mcp.js.map +1 -0
- package/dist/client/index.d.ts +78 -0
- package/dist/client/index.js +451 -0
- package/dist/server/index.d.ts +48 -0
- package/dist/server/index.js +154 -0
- package/dist/server/static-server.d.ts +44 -0
- package/dist/server/static-server.js +205 -0
- package/dist/static/html2canvas/dist/html2canvas.min.js +20 -0
- package/dist/static/html2canvas.min.js +20 -0
- package/mcp.json +15 -0
- package/package.json +61 -0
- package/readme.md +347 -0
- package/rollup.browser.config.js +23 -0
- package/rollup.config.js +22 -0
package/readme.md
ADDED
|
@@ -0,0 +1,347 @@
|
|
|
1
|
+
# Browser Console MCP
|
|
2
|
+
|
|
3
|
+
Browser console MCP client and Cursor MCP server. Let your AI assistant control the browser!
|
|
4
|
+
|
|
5
|
+
<details>
|
|
6
|
+
<summary>English (Default)</summary>
|
|
7
|
+
|
|
8
|
+
## Introduction
|
|
9
|
+
|
|
10
|
+
Browser Console MCP is a tool that allows Cursor's Claude AI assistant to interact with the browser through the MCP (Model Context Protocol) protocol. It provides a browser client and an MCP server, enabling the AI assistant to perform the following operations:
|
|
11
|
+
|
|
12
|
+
- Get page HTML content
|
|
13
|
+
- Execute JavaScript code
|
|
14
|
+
- Get page title and URL
|
|
15
|
+
- Get elements using CSS selectors
|
|
16
|
+
- Capture page screenshots
|
|
17
|
+
- Click page elements
|
|
18
|
+
- Input text into form fields
|
|
19
|
+
|
|
20
|
+
## Installation
|
|
21
|
+
|
|
22
|
+
### Global Installation
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
pnpm add -g browser-console-mcp
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### Local Installation
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
pnpm add browser-console-mcp
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Usage
|
|
35
|
+
|
|
36
|
+
### Start MCP Server
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# If installed globally
|
|
40
|
+
browser-console-mcp start
|
|
41
|
+
|
|
42
|
+
# If installed locally
|
|
43
|
+
pnpx browser-console-mcp start
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Inject MCP Client in Browser
|
|
47
|
+
|
|
48
|
+
Execute the following code in your browser console:
|
|
49
|
+
|
|
50
|
+
```javascript
|
|
51
|
+
// Inject MCP server
|
|
52
|
+
var s = document.createElement('script');
|
|
53
|
+
s.src = 'http://localhost:7898/browser-inject.js';
|
|
54
|
+
document.head.appendChild(s);
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Using in Cursor
|
|
58
|
+
|
|
59
|
+
In Cursor, your AI assistant can now use the following tools:
|
|
60
|
+
|
|
61
|
+
- `mcp_browser-mcp_executeJS`: Execute JavaScript code
|
|
62
|
+
- `mcp_browser-mcp_getPageHTML`: Get page HTML
|
|
63
|
+
- `mcp_browser-mcp_getPageTitle`: Get page title
|
|
64
|
+
- `mcp_browser-mcp_getElements`: Get elements using CSS selectors
|
|
65
|
+
- `mcp_browser-mcp_captureScreenshot`: Capture page screenshot
|
|
66
|
+
- `mcp_browser-mcp_getPageURL`: Get page URL
|
|
67
|
+
- `mcp_browser-mcp_clickElement`: Click page elements
|
|
68
|
+
- `mcp_browser-mcp_inputText`: Input text into form fields
|
|
69
|
+
|
|
70
|
+
## Development
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
# Install dependencies
|
|
74
|
+
pnpm install
|
|
75
|
+
|
|
76
|
+
# Build project
|
|
77
|
+
pnpm build:all
|
|
78
|
+
|
|
79
|
+
# Start development mode
|
|
80
|
+
pnpm dev
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## License
|
|
84
|
+
|
|
85
|
+
MIT
|
|
86
|
+
</details>
|
|
87
|
+
|
|
88
|
+
<details>
|
|
89
|
+
<summary>中文</summary>
|
|
90
|
+
|
|
91
|
+
# Browser Console MCP
|
|
92
|
+
|
|
93
|
+
浏览器控制台的MCP客户端和Cursor的MCP服务器。让你的AI助手能够控制浏览器!
|
|
94
|
+
|
|
95
|
+
## 简介
|
|
96
|
+
|
|
97
|
+
Browser Console MCP 是一个工具,允许 Cursor 的 Claude AI 助手通过 MCP(Model Context Protocol)协议与浏览器进行交互。它提供了一个浏览器客户端和一个 MCP 服务器,使 AI 助手能够执行以下操作:
|
|
98
|
+
|
|
99
|
+
- 获取页面 HTML 内容
|
|
100
|
+
- 执行 JavaScript 代码
|
|
101
|
+
- 获取页面标题和 URL
|
|
102
|
+
- 使用 CSS 选择器获取元素
|
|
103
|
+
- 截取页面截图
|
|
104
|
+
- 点击页面元素
|
|
105
|
+
- 向输入框填入文本
|
|
106
|
+
|
|
107
|
+
## 安装
|
|
108
|
+
|
|
109
|
+
### 全局安装
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
pnpm add -g browser-console-mcp
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### 本地安装
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
pnpm add browser-console-mcp
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## 使用方法
|
|
122
|
+
|
|
123
|
+
### 启动 MCP 服务器
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
# 全局安装的情况
|
|
127
|
+
browser-console-mcp start
|
|
128
|
+
|
|
129
|
+
# 本地安装的情况
|
|
130
|
+
pnpx browser-console-mcp start
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### 在浏览器中注入 MCP 客户端
|
|
134
|
+
|
|
135
|
+
在浏览器控制台中执行以下代码:
|
|
136
|
+
|
|
137
|
+
```javascript
|
|
138
|
+
// 注入MCP服务器
|
|
139
|
+
var s = document.createElement('script');
|
|
140
|
+
s.src = 'http://localhost:7898/browser-inject.js';
|
|
141
|
+
document.head.appendChild(s);
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
### 在 Cursor 中使用
|
|
145
|
+
|
|
146
|
+
在 Cursor 中,你的 AI 助手现在可以使用以下工具:
|
|
147
|
+
|
|
148
|
+
- `mcp_browser-mcp_executeJS`: 执行 JavaScript 代码
|
|
149
|
+
- `mcp_browser-mcp_getPageHTML`: 获取页面 HTML
|
|
150
|
+
- `mcp_browser-mcp_getPageTitle`: 获取页面标题
|
|
151
|
+
- `mcp_browser-mcp_getElements`: 使用 CSS 选择器获取元素
|
|
152
|
+
- `mcp_browser-mcp_captureScreenshot`: 截取页面截图
|
|
153
|
+
- `mcp_browser-mcp_getPageURL`: 获取页面 URL
|
|
154
|
+
- `mcp_browser-mcp_clickElement`: 点击页面元素
|
|
155
|
+
- `mcp_browser-mcp_inputText`: 向输入框填入文本
|
|
156
|
+
|
|
157
|
+
## 开发
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
# 安装依赖
|
|
161
|
+
pnpm install
|
|
162
|
+
|
|
163
|
+
# 构建项目
|
|
164
|
+
pnpm build:all
|
|
165
|
+
|
|
166
|
+
# 启动开发模式
|
|
167
|
+
pnpm dev
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
## 许可证
|
|
171
|
+
|
|
172
|
+
MIT
|
|
173
|
+
</details>
|
|
174
|
+
|
|
175
|
+
<details>
|
|
176
|
+
<summary>日本語</summary>
|
|
177
|
+
|
|
178
|
+
# Browser Console MCP
|
|
179
|
+
|
|
180
|
+
ブラウザコンソールのMCPクライアントとCursorのMCPサーバー。AIアシスタントにブラウザを制御させましょう!
|
|
181
|
+
|
|
182
|
+
## はじめに
|
|
183
|
+
|
|
184
|
+
Browser Console MCPは、CursorのClaude AIアシスタントがMCP(Model Context Protocol)プロトコルを通じてブラウザと対話できるようにするツールです。ブラウザクライアントとMCPサーバーを提供し、AIアシスタントが以下の操作を実行できるようにします:
|
|
185
|
+
|
|
186
|
+
- ページのHTML内容の取得
|
|
187
|
+
- JavaScriptコードの実行
|
|
188
|
+
- ページタイトルとURLの取得
|
|
189
|
+
- CSSセレクタを使用した要素の取得
|
|
190
|
+
- ページのスクリーンショット撮影
|
|
191
|
+
- ページ要素のクリック
|
|
192
|
+
- 入力フィールドへのテキスト入力
|
|
193
|
+
|
|
194
|
+
## インストール
|
|
195
|
+
|
|
196
|
+
### グローバルインストール
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
pnpm add -g browser-console-mcp
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
### ローカルインストール
|
|
203
|
+
|
|
204
|
+
```bash
|
|
205
|
+
pnpm add browser-console-mcp
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
## 使用方法
|
|
209
|
+
|
|
210
|
+
### MCPサーバーの起動
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
# グローバルインストールの場合
|
|
214
|
+
browser-console-mcp start
|
|
215
|
+
|
|
216
|
+
# ローカルインストールの場合
|
|
217
|
+
pnpx browser-console-mcp start
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### ブラウザにMCPクライアントを注入
|
|
221
|
+
|
|
222
|
+
ブラウザのコンソールで以下のコードを実行します:
|
|
223
|
+
|
|
224
|
+
```javascript
|
|
225
|
+
// MCPサーバーを注入
|
|
226
|
+
var s = document.createElement('script');
|
|
227
|
+
s.src = 'http://localhost:7898/browser-inject.js';
|
|
228
|
+
document.head.appendChild(s);
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
### Cursorでの使用
|
|
232
|
+
|
|
233
|
+
Cursorでは、AIアシスタントが以下のツールを使用できるようになります:
|
|
234
|
+
|
|
235
|
+
- `mcp_browser-mcp_executeJS`: JavaScriptコードを実行
|
|
236
|
+
- `mcp_browser-mcp_getPageHTML`: ページのHTMLを取得
|
|
237
|
+
- `mcp_browser-mcp_getPageTitle`: ページタイトルを取得
|
|
238
|
+
- `mcp_browser-mcp_getElements`: CSSセレクタを使用して要素を取得
|
|
239
|
+
- `mcp_browser-mcp_captureScreenshot`: ページのスクリーンショットを撮影
|
|
240
|
+
- `mcp_browser-mcp_getPageURL`: ページURLを取得
|
|
241
|
+
- `mcp_browser-mcp_clickElement`: ページ要素をクリック
|
|
242
|
+
- `mcp_browser-mcp_inputText`: 入力フィールドにテキストを入力
|
|
243
|
+
|
|
244
|
+
## 開発
|
|
245
|
+
|
|
246
|
+
```bash
|
|
247
|
+
# 依存関係のインストール
|
|
248
|
+
pnpm install
|
|
249
|
+
|
|
250
|
+
# プロジェクトのビルド
|
|
251
|
+
pnpm build:all
|
|
252
|
+
|
|
253
|
+
# 開発モードの起動
|
|
254
|
+
pnpm dev
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
## ライセンス
|
|
258
|
+
|
|
259
|
+
MIT
|
|
260
|
+
</details>
|
|
261
|
+
|
|
262
|
+
<details>
|
|
263
|
+
<summary>한국어</summary>
|
|
264
|
+
|
|
265
|
+
# Browser Console MCP
|
|
266
|
+
|
|
267
|
+
브라우저 콘솔용 MCP 클라이언트와 Cursor용 MCP 서버. AI 어시스턴트가 브라우저를 제어할 수 있게 해보세요!
|
|
268
|
+
|
|
269
|
+
## 소개
|
|
270
|
+
|
|
271
|
+
Browser Console MCP는 Cursor의 Claude AI 어시스턴트가 MCP(Model Context Protocol) 프로토콜을 통해 브라우저와 상호작용할 수 있게 해주는 도구입니다. 브라우저 클라이언트와 MCP 서버를 제공하여 AI 어시스턴트가 다음 작업을 수행할 수 있도록 합니다:
|
|
272
|
+
|
|
273
|
+
- 페이지 HTML 콘텐츠 가져오기
|
|
274
|
+
- JavaScript 코드 실행하기
|
|
275
|
+
- 페이지 제목 및 URL 가져오기
|
|
276
|
+
- CSS 선택자를 사용하여 요소 가져오기
|
|
277
|
+
- 페이지 스크린샷 캡처하기
|
|
278
|
+
- 페이지 요소 클릭하기
|
|
279
|
+
- 입력 필드에 텍스트 입력하기
|
|
280
|
+
|
|
281
|
+
## 설치
|
|
282
|
+
|
|
283
|
+
### 전역 설치
|
|
284
|
+
|
|
285
|
+
```bash
|
|
286
|
+
pnpm add -g browser-console-mcp
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
### 로컬 설치
|
|
290
|
+
|
|
291
|
+
```bash
|
|
292
|
+
pnpm add browser-console-mcp
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
## 사용 방법
|
|
296
|
+
|
|
297
|
+
### MCP 서버 시작하기
|
|
298
|
+
|
|
299
|
+
```bash
|
|
300
|
+
# 전역 설치한 경우
|
|
301
|
+
browser-console-mcp start
|
|
302
|
+
|
|
303
|
+
# 로컬 설치한 경우
|
|
304
|
+
pnpx browser-console-mcp start
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
### 브라우저에 MCP 클라이언트 주입하기
|
|
308
|
+
|
|
309
|
+
브라우저 콘솔에서 다음 코드를 실행하세요:
|
|
310
|
+
|
|
311
|
+
```javascript
|
|
312
|
+
// MCP 서버 주입
|
|
313
|
+
var s = document.createElement('script');
|
|
314
|
+
s.src = 'http://localhost:7898/browser-inject.js';
|
|
315
|
+
document.head.appendChild(s);
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
### Cursor에서 사용하기
|
|
319
|
+
|
|
320
|
+
Cursor에서 AI 어시스턴트는 이제 다음 도구들을 사용할 수 있습니다:
|
|
321
|
+
|
|
322
|
+
- `mcp_browser-mcp_executeJS`: JavaScript 코드 실행하기
|
|
323
|
+
- `mcp_browser-mcp_getPageHTML`: 페이지 HTML 가져오기
|
|
324
|
+
- `mcp_browser-mcp_getPageTitle`: 페이지 제목 가져오기
|
|
325
|
+
- `mcp_browser-mcp_getElements`: CSS 선택자로 요소 가져오기
|
|
326
|
+
- `mcp_browser-mcp_captureScreenshot`: 페이지 스크린샷 캡처하기
|
|
327
|
+
- `mcp_browser-mcp_getPageURL`: 페이지 URL 가져오기
|
|
328
|
+
- `mcp_browser-mcp_clickElement`: 페이지 요소 클릭하기
|
|
329
|
+
- `mcp_browser-mcp_inputText`: 입력 필드에 텍스트 입력하기
|
|
330
|
+
|
|
331
|
+
## 개발
|
|
332
|
+
|
|
333
|
+
```bash
|
|
334
|
+
# 의존성 설치
|
|
335
|
+
pnpm install
|
|
336
|
+
|
|
337
|
+
# 프로젝트 빌드
|
|
338
|
+
pnpm build:all
|
|
339
|
+
|
|
340
|
+
# 개발 모드 시작
|
|
341
|
+
pnpm dev
|
|
342
|
+
```
|
|
343
|
+
|
|
344
|
+
## 라이선스
|
|
345
|
+
|
|
346
|
+
MIT
|
|
347
|
+
</details>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import commonjs from "@rollup/plugin-commonjs";
|
|
2
|
+
import resolve from "@rollup/plugin-node-resolve";
|
|
3
|
+
import typescript from "@rollup/plugin-typescript";
|
|
4
|
+
import { terser } from "rollup-plugin-terser";
|
|
5
|
+
|
|
6
|
+
export default {
|
|
7
|
+
input: "src/browser/index.ts",
|
|
8
|
+
output: {
|
|
9
|
+
file: "dist/browser/index.js",
|
|
10
|
+
format: "es",
|
|
11
|
+
sourcemap: true,
|
|
12
|
+
},
|
|
13
|
+
plugins: [
|
|
14
|
+
resolve(),
|
|
15
|
+
commonjs(),
|
|
16
|
+
typescript({
|
|
17
|
+
tsconfig: "./tsconfig.browser.json",
|
|
18
|
+
sourceMap: true,
|
|
19
|
+
inlineSources: true,
|
|
20
|
+
}),
|
|
21
|
+
terser(),
|
|
22
|
+
],
|
|
23
|
+
};
|
package/rollup.config.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import commonjs from "@rollup/plugin-commonjs";
|
|
2
|
+
import resolve from "@rollup/plugin-node-resolve";
|
|
3
|
+
import typescript from "@rollup/plugin-typescript";
|
|
4
|
+
import { terser } from "rollup-plugin-terser";
|
|
5
|
+
|
|
6
|
+
export default {
|
|
7
|
+
input: "src/client/index.ts",
|
|
8
|
+
output: {
|
|
9
|
+
file: "dist/client/browser-console-mcp.js",
|
|
10
|
+
format: "iife",
|
|
11
|
+
name: "BrowserConsoleMCP",
|
|
12
|
+
sourcemap: true,
|
|
13
|
+
},
|
|
14
|
+
plugins: [
|
|
15
|
+
resolve(),
|
|
16
|
+
commonjs(),
|
|
17
|
+
typescript({
|
|
18
|
+
tsconfig: "./tsconfig.client.json",
|
|
19
|
+
}),
|
|
20
|
+
terser(),
|
|
21
|
+
],
|
|
22
|
+
};
|