# familiar-mcp [Health: Active]

**Category:** 📂 Browser Automation  
**Repository:** https://github.com/dominion525/familiar  
**GitHub Stars:** 1  
**npm Downloads (last month):** 106  
**Views:** 3  
**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","@dominion525/familiar-mcp@latest"]
  }
}
```

## Documentation

## What familiar-mcp MCP server does

The familiar-mcp MCP server lets an MCP-compatible client control Google Chrome running on macOS. Actions are scoped with a window ID and tab ID, so operations do not depend on whichever tab happens to be active. The implementation uses AppleScript and Apple Events rather than the Chrome DevTools Protocol or Playwright.

Its 32 actions cover the browser lifecycle and page interaction. An agent can list, create, and close tabs; open regular or incognito tabs; inspect the active tab, window mode, and loading state; navigate to URLs; reload pages; move through history; and stop loading. It can also retrieve the current DOM as HTML and read text, attributes, form values, element presence, or all matches.

## How it works

The MCP implementation is in the repository's `mcp/` directory and is written in TypeScript. A client starts it with the package command, such as `npx @dominion525/familiar-mcp@latest`, and sends tool calls over MCP. The server translates those calls into AppleScript operations against the local Chrome application.

Selectors support CSS by default, along with `text=`, `xpath=`, and `label=` forms. Page actions include clicking, filling and clearing fields, selecting options, changing checked state, pressing keys, submitting forms, and scrolling an element into view. Waiting actions can pause for page loading, a selector, or a JavaScript condition. JavaScript can run directly or from a file, with the file form intended for longer scripts.

## Setup and configuration

Use macOS with Google Chrome installed. In Chrome, enable **Allow JavaScript from Apple Events** under **View → Developer**. The first run also requires approving the macOS Automation permission prompt.

For Claude Code, the documented installation command is:

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

The repository also provides a Claude Code plugin and an agent-skills installation path, but the MCP directory is the relevant implementation for clients that connect through MCP. A standalone AppleScript entry point is available when an MCP client is not needed.

## Tools and capabilities

The familiar-mcp MCP server provides grouped capabilities for:

- Managing normal and incognito tabs with explicit window and tab identifiers.
- Inspecting tab state, window mode, loading state, DOM HTML, text, attributes, values, and matches.
- Navigating, reloading, stopping, and traversing browser history.
- Waiting for page loads, selectors, or JavaScript conditions.
- Operating controls and forms, including clicks, text entry, options, checkboxes, keyboard input, submission, and scrolling.
- Running JavaScript inline or from a script file.

## Limitations and notes

It controls the user's real browser rather than a separate headless instance, so the target Chrome session must be available locally and have the required permissions.

It also does not specify authentication, remote browser control, or browser profiles beyond normal and incognito tab creation. JavaScript execution is arbitrary, so clients should use it only when the requested page operation requires script-level access.

_Full upstream README: https://allmcps.com/mcp/familiar-mcp/readme_

