Allows AI agents to drive a real Chrome browser tab with a visible cursor and real user input through a local hub and extension.
Juga dikenal sebagai longvo2k/pointer, @longvo2k/pointer
- Stars
- 2
- Tools
- —
- Unduhan, 30 hari
- —
- Versi terbaru
- —
- Commit terakhir
- 13 Nov 2026
- Lisensi
- MIT
Apa itu Pointer MCP?
Pointer adalah MCP server. Allows AI agents to drive a real Chrome browser tab with a visible cursor and real user input through a local hub and extension.
Ringkasan dibuat dari README proyek
Tentang Pointer MCP server
Driving a real Chrome browser tab with a visible cursor and human-like input is what Pointer enables for AI agents. By using a local hub and a Chrome extension, agents like Claude Code, Cursor, and OpenCode can interact with your existing browser sessions, including pages where you are already signed in. This setup allows the agent to perform actions in background tabs without stealing your focus, while you can monitor every movement through a visible pointer on your screen.
Developers use a variety of tools to manage this process, including browser_status, click, fill, and navigate. The system uses the chrome.debugger protocol to ensure that clicks and keystrokes behave exactly as they would from a real person. To maintain security, the hub only communicates with 127.0.0.1 and includes features to block specific sites like banks. The server is designed to be efficient, reporting only what changes on the screen to minimize token usage during tasks.
Apa yang bisa Anda lakukan dengannya
- 1Automate signup flowsAsk an agent to test a registration process by selecting a specific plan and filling out a form.
- 2Debug web applicationsInstruct an AI to investigate why a specific page is not displaying data by checking the console and network logs.
- 3Conduct web researchHave an agent search for a topic on Wikipedia and provide a concise summary of the findings.
Ditulis berdasarkan README proyek. Setiap use case diperiksa terhadap kutipan dari README tersebut.
Cara menginstal Pointer MCP
Format diverifikasi 10 Nov 2026Tambahkan ke CursorTambahkan ke GooseInstal Pointer MCP di Claude Code
$ claude mcp add pointer -- npx -y @longvo2k/pointerInstal Pointer MCP di Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"pointer": {
"command": "npx",
"args": [
"-y",
"@longvo2k/pointer"
]
}
}
}Instal Pointer MCP di VS Code
.vscode/mcp.json
{
"servers": {
"pointer": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@longvo2k/pointer"
]
}
}
}Instal Pointer MCP di VS Code CLI
$ code --add-mcp '{"name":"pointer","type":"stdio","command":"npx","args":["-y","@longvo2k/pointer"]}'Instal Pointer MCP di Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"pointer": {
"command": "npx",
"args": [
"-y",
"@longvo2k/pointer"
]
}
}
}Instal Pointer MCP di Codex
$ codex mcp add pointer -- npx -y @longvo2k/pointerInstal Pointer MCP di Codex config.toml
~/.codex/config.toml
[mcp_servers.pointer] command = "npx" args = ["-y", "@longvo2k/pointer"]
Instal Pointer MCP di Gemini CLI
$ gemini mcp add -s user pointer npx -- -y @longvo2k/pointerInstal Pointer MCP di Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"pointer": {
"command": "npx",
"args": [
"-y",
"@longvo2k/pointer"
]
}
}
}Pengecekan otomatis
Berjalan 14 Nov 2026Laporan lengkap →Lolos checks otomatis kami. Ini bukan audit keamanan: baca kodenya dan berikan server akses paling terbatas yang dibutuhkannya. Cara kerja checks
- Source repository terhubung dan dapat dijangkaulongvo2k/pointer is public and reachablegithub.com/longvo2k/pointer ↗Lolos
- Nama paket mencantumkan repositori ini sebagai sumbernya@longvo2k/pointer names longvo2k/pointer as sourcenpmjs.com/package/@longvo2k/pointer ↗Lolos
- Provenance build (atestasi Sigstore)Sigstore attestation for @longvo2k/pointernpmjs.com/package/@longvo2k/pointer/v/0.3.0#provenance ↗Lolos
- Lisensi open source (OSI)MITspdx.org/licenses/MIT.html ↗Lolos
- Ada commit atau release dalam satu tahun terakhirLast commit or release 2026-11-13github.com/longvo2k/pointer ↗Lolos
- OpenSSF ScorecardTidak diperiksa
- Nama package tidak mirip dengan package populerNo popular package one edit away from @longvo2k/pointerLolos
- Tidak ada advisory kritis pada paket atau dependensinyaTidak diperiksa
- Tidak ada instruksi tersembunyi untuk model0 tool descriptions and the README read; no override phrases, credential paths or hidden charactersLolos
- Tools yang bersifat destruktif telah diberi labelTidak diperiksa
- Endpoint remote merespons handshake MCPTidak diperiksa
README
Lihat di GitHubPointer
Let any agent drive your real Chrome tab, with a pointer you can watch.
Agents often need a page that is already open in your browser, signed in as you. Pointer lets them use your own Chrome through a small local hub and an extension, and shows every move on screen.
- Works with any agent. One MCP server for Claude Code, Cursor, OpenCode and Codex, plus a CLI.
- You can watch. A cursor slides to each target with a label like
click · Sign Up. Each agent gets its own colour and tab group. - You stay where you are. The agent works in background tabs and never steals your focus.
- You can stop it. Press
EscorAlt+Shift+S, click in its tab, or use the Stop button. It must ask you before it goes on. - Real input. Clicks and keys go through
chrome.debugger, so pages react as they would to a person. - Few tokens. Every action reports only what changed on screen. A six-step Wikipedia task used about 2,400 tokens of tool output.
Install
Easiest: let your agent do it. Paste this into Claude Code, Codex, Cursor, OpenCode, or any agent that can run shell commands:
Set up Pointer (https://github.com/longvo2k/pointer) so you can drive my Chrome. Follow its README.
1. Install the command. If Node 18+ is installed, run `npm install -g @longvo2k/pointer`.
Otherwise read https://raw.githubusercontent.com/longvo2k/pointer/main/install.sh, then run it
with POINTER_NO_OPEN=1. Ask me before it changes my shell's PATH.
2. Run `pointer setup --no-open` and use the MCP config it prints to add Pointer as an MCP server
in this agent (for Claude Code: `claude mcp add pointer -- <command and args it prints>`).
3. If this agent reads Agent Skills (SKILL.md), link the `skills/pointer` folder of the install
into your skills folder (for Claude Code: ~/.claude/skills/pointer).
4. Open https://chromewebstore.google.com/detail/pointer/jckadbekhgkcnjkjcoaecjjkpkkgamjl in my
Chrome and ask me to click "Add to Chrome". Wait until I say it is done.
5. Run `pointer status` and check it says "Extension: connected". If not, read
https://github.com/longvo2k/pointer/blob/main/docs/troubleshooting.md and tell me what you need.
6. Tell me what you set up, and whether I need to restart this session to load Pointer's tools.
By hand:
- Add the extension from the Chrome Web Store.
- Install the command:
npm install -g @longvo2k/pointer(Node 18+), orcurl -fsSL https://raw.githubusercontent.com/longvo2k/pointer/main/install.sh | POINTER_NO_OPEN=1 bash. - Connect your agent. For Claude Code:
claude mcp add pointer -- pointer-mcp. For other agents, runpointer setup, which prints the config with your paths. - Check it:
pointer statusshould say "Extension: connected".
The install guide covers the installer, other MCP clients, the agent skill, loading the extension unpacked, uninstalling, and working from a checkout.
How the agent uses it
Look once, then act by ref and read what changed:
snapshot → click e31 → fill e40 "ada@example.com"
clicked button "Code" → https://github.com/microsoft/vscode
changes in view:
+ button "Clone with HTTPS" [ref=e286]
+ link "Download ZIP" [ref=e292]
| Job | Tools |
|---|---|
| Browsers | browser_status, browsers_list, browser_use |
| Tabs | tabs_list, tab_open, tab_select, tab_close, tab_focus |
| Read | snapshot, find, read_text, screenshot, wait_for |
| Act | click, hover, fill, press, scroll, navigate, upload, dialog |
| Check | verify, viewport, layout, console, network |
| Talk to you | say, stop, resume |
The same tools work from the shell: pointer open example.com, pointer snap, pointer click e14.
Run pointer help for the list.
With several Chrome profiles, pointer browsers lists them by name and email, and
pointer use Work switches, opening the profile if it is closed.
The usage guide covers every tool, the CLI, profiles, what Pointer draws on the page, the settings (including the Classic and Sketch looks) and environment variables.
Examples
Real runs: OpenCode with a DeepSeek model drives Pointer in Chrome.
"Test the signup flow — pick the Scale plan, use ada@example.com and team Lovelace Labs, create the workspace, and check the invite link is shown. Report pass/fail per step."
"Users say the Reports page stays empty after clicking Load reports. Find the root cause from the console and network."
"On Wikipedia, search for Model Context Protocol, open the article, and give me a 3-bullet summary."
Security and privacy
- No outside servers. Pointer talks only to
127.0.0.1. No accounts, analytics or telemetry. - No code execution tool. No
eval, and no tool runs JavaScript you pass in. - Web pages cannot reach it. The hub refuses cross-site requests, DNS rebinding, and pages pretending to be the extension.
- Blocked sites. List sites like your bank in the settings, and agents cannot open or read them.
- One runtime dependency (
ws), and plain source you can read.
Page text and screenshots go to the agent you connected, and from there to its AI provider. See SECURITY.md and PRIVACY.md.
grep -rnE "https?://[A-Za-z0-9]" bin lib extension | grep -v 127.0.0.1 | grep -v w3.org/2000/svg # outside URLs: none
grep -rnE "\beval\(|new Function" bin lib extension # dynamic code: none
npm ls --omit=dev --all # dependencies: ws only
w3.org/2000/svg is the SVG namespace for the cursor icon, not a request. CI runs the same checks
on every push.
Help
Something not working? See troubleshooting. To contribute, see
CONTRIBUTING.md and run npm test before sending a change.
License
MIT. See LICENSE. The Sketch look ships two fonts under the SIL Open Font License 1.1:
Caveat and Patrick Hand by Patrick Wagesreiter (licences in
extension/fonts/).
Pointer was written from scratch. Its approach was inspired by ofershap/real-browser-mcp.
Pertanyaan tentang Pointer MCP
Bagaimana cara menambahkan Pointer MCP ke Claude Code?
Jalankan claude mcp add pointer -- npx -y @longvo2k/pointer di terminal Anda. Tambahkan --scope user agar tersedia di semua proyek.
Bagaimana cara menambahkan Pointer MCP ke Cursor?
Buka ~/.cursor/mcp.json dan tambahkan server di bawah mcpServers, menggunakan config Cursor yang ditunjukkan di bagian instalasi di atas.
Can I watch what the agent is doing?
Yes, a visible cursor slides to each target with action labels, and each agent is assigned its own color and tab group.
Does the agent steal my focus while working?
No, the agent operates in background tabs so you can continue your work uninterrupted.
How does the agent interact with web pages?
It uses chrome.debugger to ensure clicks and keystrokes are processed by pages exactly as they would be by a human.