Skip to main content

Kitsune

Kitsune: an orange fox in a browser window, connecting your browser and your AI agent

Your browser. Your agent. One clever bridge.

Kitsune lets AI agents like Claude Code, Codex, Pi, and OpenCode use the Firefox, Zen, or LibreWolf browser you already have open. Your sessions, cookies, and extensions stay in place. No Playwright, Chromium, or WebDriver required.

What can it do?

  • Research the web. Search, read pages, and summarize findings with links.
  • Interact with websites. Click, type, select options, and fill forms—even on sites you're already signed into.
  • Capture and extract. Take screenshots or turn page content into text and Markdown.
  • Work across tabs. Keep research and tasks in separate tabs without replacing the page you're using.

Claude Code uses Kitsune to open Hacker News and summarize the top three stories

A real browser session, captured with Kitsune and sped up.

How do I use it?

  1. Connect once. Install uv, then follow the MCP setup for your agent below. Install the browser extension in Firefox, Zen, or LibreWolf: the signed build installs once, while the developer build (needed for browser_js) is a temporary add-on.

  2. Keep your browser open. Kitsune starts its shared bridge automatically. Ask your agent to check the connection before your first task.

  3. Ask in plain language. For example:

    Open a new tab, search for today's weather near Suseong Lake in Daegu, and summarize the forecast with a link to the source.

    Inspect this page's form and fill a draft. Don't submit it yet.

    Open Hacker News and summarize the top three stories with links.

Use a dedicated browser profile and only give access to accounts the agent needs. Ask for confirmation before sending, purchasing, or deleting anything. Read the security guidance before using sensitive accounts.

MCP setup

All clients launch the same local stdio server: uvx --from kitsune-browser-mcp kitsune. Choose one setup method for each client you use. Several clients can share the same bridge; keep their Kitsune versions and install sources consistent.

CLI registration: Claude Code, Codex, and Pi

Claude Code — available in every project with --scope user:

claude mcp add --scope user kitsune -- uvx --from kitsune-browser-mcp kitsune

Codex CLI — registers the server in ~/.codex/config.toml:

codex mcp add kitsune -- uvx --from kitsune-browser-mcp kitsune

Pi — uses built-in MCP support with user-level configuration by default:

pi mcp add kitsune -- uvx --from kitsune-browser-mcp kitsune
pi mcp list

Add --local before kitsune to register Pi's server only for the current project. In an already running Pi session, run /reload, then /mcp to inspect the connection. If an MCP adapter extension overrides Pi's built-in support, follow that extension's configuration instructions instead.

OpenCode

Merge this into ~/.config/opencode/opencode.json (global) or opencode.json in your project root. OpenCode uses an mcp object and a command array, not mcpServers:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "kitsune": {
      "type": "local",
      "command": ["uvx", "--from", "kitsune-browser-mcp", "kitsune"],
      "enabled": true
    }
  }
}

JSON configuration: Pi, Claude Desktop, and Cursor

These clients share the same mcpServers format. As an alternative to CLI registration where available, merge the following entry into your client's config; keep any existing servers:

Client Config file
Pi (built-in MCP) ~/.pi/agent/mcp.json (user) or .pi/mcp.json (project; requires project trust)
Claude Desktop (macOS) ~/Library/Application Support/Claude/claude_desktop_config.json
Cursor ~/.cursor/mcp.json (global) or .cursor/mcp.json (project)
{
  "mcpServers": {
    "kitsune": {
      "command": "uvx",
      "args": ["--from", "kitsune-browser-mcp", "kitsune"]
    }
  }
}

Restart or reconnect your client after configuring it, then ask it to call browser_status. With the browser extension loaded, the response should include "extension_connected": true. GUI apps may need the full path returned by which uvx instead of uvx if they do not inherit your shell's PATH.

For Codex's TOML alternative, environment variables, version pinning, and upgrades, see Installation.

For the details: Tools · Configuration · Troubleshooting · Updating · API reference · Development

For architecture, product trade-offs, and the wider browser MCP landscape, see Positioning.


MIT · Based on ZenLink and ZenLink-MCP by Jay-Quan. Credits · License

Metadata

Release files for kitsune-browser-mcp 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kitsune-browser-mcp 0.2.0
File Size Uploaded Provenance
kitsune_browser_mcp-0.2.0.tar.gz 72.4 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for kitsune-browser-mcp 0.2.0
File Interpreter ABI Platform
kitsune_browser_mcp-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 123.5 kB

Release files / kitsune_browser_mcp-0.2.0.tar.gz

Download URL kitsune_browser_mcp-0.2.0.tar.gz
Size 72.4 kB
Tags Source
SHA-256 checksum
How to use checksums
03631498f04faa00e4314c4de827f4d13e4f4edcfd8f0da041089f6fd51d5403
BLAKE2b-256 checksum
How to use checksums
182c5dfc9cee3c5b57898aef9210475348b65506808ed02a26e88fd256ccbc89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.3 {"installer":{"name":"uv","version":"0.13.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / kitsune_browser_mcp-0.2.0-py3-none-any.whl

Download URL kitsune_browser_mcp-0.2.0-py3-none-any.whl
Size 51.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
af00cbb94ffd09b0f0b799453877641c4d50f13f59580a5f492e529676098b16
BLAKE2b-256 checksum
How to use checksums
7a3da839ebe5fb4f8f6f3a39d340969c764cb8de79c9b5739a1962e32b827f35
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.3 {"installer":{"name":"uv","version":"0.13.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for kitsune-browser-mcp 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page