Goose browser MCP

Give Goose a browser that survives the agent session.

Local MCP endpoint

http://127.0.0.1:47812/mcp

Run Goose and Hronaut on the same computer. The endpoint is loopback-only; a remote Goose process, container without host access, or another machine cannot reach it.

Choose the right browser

Goose browser tools or Hronaut?

Goose can load MCP extensions and install Agent Skills, including browser integrations maintained outside Hronaut. Use those when their browser ownership and session model fit.

Goose session

Task-owned browser tooling

Keep browser control inside the current Goose workflow when you do not need a separate, long-lived desktop profile.

Hronaut workspace

Browser state outside the task

A separately visible desktop app with durable named workspaces and explicit pause and takeover. Tabs and site state stay available to later Goose sessions or another compatible MCP client.

Step 1 · Connect

Connect Goose.

Start Hronaut first. Goose calls this a Remote Extension (Streamable HTTP) because it uses a network transport; the Hronaut address still stays on this computer.

Authentication off only

Install in Goose Desktop

Use the one-click installer only with a new or otherwise non-sensitive Hronaut profile whose MCP authentication is off.

The link contains only the fixed loopback endpoint and public metadata, never an owner token. Goose shows the extension before saving it.

Authentication off · manual

~/.config/goose/config.yaml

extensions:
  hronaut:
    type: streamable_http
    name: hronaut
    enabled: true
    uri: "http://127.0.0.1:47812/mcp"
    headers: {}
    env_keys: []
    envs: {}
    timeout: 300

Authentication on

Reference a Goose-managed secret from the header

extensions:
  hronaut:
    type: streamable_http
    name: hronaut
    enabled: true
    uri: "http://127.0.0.1:47812/mcp"
    headers:
      Authorization: "Bearer ${HRONAUT_MCP_TOKEN}"
    env_keys:
      - HRONAUT_MCP_TOKEN
    envs: {}
    timeout: 300

Turn on Require MCP authentication in Hronaut. Run goose configure, add Hronaut as a Remote Extension, and store HRONAUT_MCP_TOKEN as an extension secret. Goose resolves env_keys from the process environment or its secret store and substitutes the value into the header.

Prefer the operating-system keyring. On a headless system where Goose falls back to plaintext secrets.yaml, protect that file or launch Goose with the variable supplied by a trusted process. Never put the token directly in config.yaml, a custom-header value, URL, source control, chat, screenshots or campaign data.

Try it for one CLI session without saving

Authentication off · one session

Connect without saving

goose session --with-streamable-http-extension "http://127.0.0.1:47812/mcp"

Goose documents this flag for temporary Streamable HTTP extensions. It contains no credential, so it works only while Hronaut authentication is off.

Step 2 · Verify

Check that it works.

Use a clean workspace for this check, before Goose goes near a signed-in page.

  1. 1

    Goose sees Hronaut

    Open Extensions in Goose Desktop and confirm that hronaut is enabled. Avoid pasting verbose configuration output into chat: resolved headers can contain credentials.

  2. 2

    Hronaut sees Goose

    Start a local Goose session, then open Hronaut Home. The Goose MCP client should appear under Connections.

  3. 3

    Run a first browser task

    Ask: “Create a Hronaut workspace named first-check, open https://example.com inside it, and tell me the page title and workspace ID. Start with clean scratch storage.”

    Expected result: a visible first-check workspace shows Example Domain. End the Goose session and start another one; the Hronaut workspace should remain.

Security

Protect your signed-in sessions.

Turn on authentication. A new Hronaut profile starts with MCP authentication off, so any process running as your user can control it. Enable authentication before you use valuable sign-ins, and review the extension and its tools before granting broad approval.

Treat web pages as untrusted. Websites can contain prompt injection, and a signed-in workspace carries the authority of every site in it. Pause MCP before you enter passwords, security keys, payment details or other human-only information.

Keep the endpoint local. Do not expose or tunnel Hronaut to make a remote Goose process reach 127.0.0.1. Hronaut is designed for a local coding client and validates a loopback security boundary.

Keep going

Next steps.

Give every durable browser job its own named workspace. It keeps cookies and storage apart from other workspaces and stays available to the next Goose session or another local MCP client. Learn how to hand off a login safely.

Sources

Hronaut is an independent project and is not affiliated with or endorsed by the Goose project or the Agentic AI Foundation.