# familiar-mcp [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/dominion525/familiar  
**GitHub Stars:** 0  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/familiar-mcp

## Description
MCP server that drives the user's real macOS Chrome via AppleScript. 32 tools.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "familiar-mcp": {
    "command": "npx",
    "args": ["-y","skills"]
  }
}
```

## Documentation & README

# familiar
Control your real macOS Chrome via AppleScript — no DevTools Protocol, no Playwright.

A Claude Code skill that drives Google Chrome on macOS through AppleScript (Apple
Events). It uses your everyday browser instead of a headless/automated one, so pages
behind bot/WAF defenses tend to treat it as a normal user.

日本語版は [README.ja.md](https://github.com/dominion525/familiar/blob/HEAD/README.ja.md) を参照してください。

## What it does

Everything is tab-scoped (windowId + tabId); it never relies on the "active tab".

- `list_tabs` / `new_tab` / `new_incognito_tab` / `close_tab` — tab management (new_tab uses a normal window, new_incognito_tab an incognito one)
- `active_tab` / `window_mode` / `is_loading` — inspect active tab / window mode / tab loading state
- `navigate` / `get_tab_url` — navigation
- `reload` / `go_back` / `go_forward` / `stop` — history & reload control
- `wait_for_load` / `wait_for_selector` / `wait_for_function` — wait for page load / element / a JS condition
- `get_html` — get the current DOM as HTML
- `get_text` / `get_attribute` / `get_value` / `exists` / `query_all` — read element text / attribute / value / presence / all matches
- `click` / `fill` / `clear` / `select_option` / `set_checked` / `press_key` / `submit` / `scroll_into_view` — interact with elements and forms
- `execute_js` / `execute_js_file` — run arbitrary JavaScript (use the file form for complex scripts)

Selectors accept CSS (default), `text=`, `xpath=`, and `label=` forms.

## Prerequisites

- macOS with Google Chrome
- Enable Chrome's "Allow JavaScript from Apple Events"
  (View → Developer → Allow JavaScript from Apple Events)
- Approve the Automation permission prompt on first run

## Install

### Claude Code plugin

```
/plugin marketplace add dominion525/familiar
/plugin install familiar@familiar
```

For local development / testing:

```
/plugin marketplace add /path/to/familiar
/plugin install familiar@familiar
```

### Vercel Skills (agent-skills)

```
npx skills add dominion525/familiar
```

This places the skill under `~/.agents/skills/familiar/`. Any client that follows the
[agent-skills spec](https://agentskills.io/specification) (Claude Code, Cursor, and
others) picks it up automatically. The registry is at https://skills.sh.

### MCP server

The `mcp/` directory contains an MCP server implementation (TypeScript) that
exposes the same 32 actions to any MCP-compatible client (Claude Code, Claude
Desktop, Cursor, Codex CLI, and others).

Quick install (Claude Code):

```bash
claude mcp add familiar -- npx @dominion525/familiar-mcp@latest
```

See [mcp/README.md](https://github.com/dominion525/familiar/blob/HEAD/mcp/README.md) for full per-client install and configuration.

### Standalone (no install)

The script also runs standalone, without installing the skill:

```
osascript skills/familiar/familiar.applescript list_tabs
```

See `skills/familiar/SKILL.md` for full usage.

## License

MIT

