Integrations / AI agent clients / LangChain

Browser tools for LangChain agents.

LangChain loads MCP tools through langchain-mcp-adapters. Point it at the Browz server and your agent gets real browser tools, snapshot, click, type and screenshot, each run working in its own isolated profile.

Terminalpip install langchain-mcp-adapters langgraph "langchain[openai]"

Setup

Set it up.

  1. Install Browz and open it

    Download Browz on the computer that runs your agent.

  2. Install the packages

    The adapters, LangGraph’s prebuilt agent and a model provider.

    Terminalpip install langchain-mcp-adapters langgraph "langchain[openai]"
  3. Load the tools and run

    MultiServerMCPClient starts the server inside Browz over stdio and turns its tools into LangChain tools. Set OPENAI_API_KEY first, or use another model.

    agent.pyimport asyncio from langchain_mcp_adapters.client import MultiServerMCPClient from langgraph.prebuilt import create_react_agent async def main(): client = MultiServerMCPClient({"browz": {"transport": "stdio", "command": "/Applications/Browz.app/Contents/Resources/browz-mcp", "args": []}}) agent = create_react_agent("openai:gpt-5", await client.get_tools()) out = await agent.ainvoke({"messages": [("user", "Using Browz: create a new profile called agent-check, start it, open https://example.com, tell me the page title, take a screenshot, then stop the session and delete the profile.")]}) print(out["messages"][-1].content) asyncio.run(main())
  4. From a hosted agent (beta)

    The same client over HTTP, with an agent token read from BROWZ_AGENT_TOKEN.

    Pythonimport os from langchain_mcp_adapters.client import MultiServerMCPClient client = MultiServerMCPClient({"browz": {"transport": "http", "url": "https://mcp.gobrowz.com/mcp", "headers": {"Authorization": "Bearer " + os.environ["BROWZ_AGENT_TOKEN"]}}}) tools = await client.get_tools() # inside an async function

Client API from LangChain MCP docs, langchain-mcp-adapters.

Example

The expected result.

The script above runs the same check every Browz setup uses: create a profile, open example.com, read the title, take a screenshot, clean up.

OutputThe page title is "Example Domain". I took a screenshot, stopped the session and deleted the agent-check profile.

The wording varies by model; the title should be “Example Domain” and no agent-check profile should be left in Browz.

Good to know

Notes and tips.

  • The example uses the macOS path of the server; in your own code, read it from the BROWZ_MCP environment variable or use npx -y @browz/mcp so it runs on every computer.
  • The remote server at https://mcp.gobrowz.com/mcp is in free public beta: it needs the Browz app open with Remote control on, on a computer with a hardware security chip, and offers the profile, tab and page tools. See what it needs and what it offers.
  • Browz has to be installed and open on the same computer: the local MCP server drives the app’s own profiles through its local API, and reads the app’s credentials itself, so no token goes in the config.
  • A person completes sign-ins, 2FA codes and CAPTCHAs. The agent can pause with browz_request_human and hand you the profile’s window, then carry on in the same session. Browz never solves or bypasses CAPTCHAs.
  • Use agents only where each site’s terms allow automated use, on accounts you are entitled to use. Our acceptable use policy applies to agents the same as to people.
  • The MCP server is on every plan, Free included (5 profiles). How many agent sessions can be open at once depends on the plan: see pricing.

FAQ

LangChain and Browz.

Do I need the Browz Python SDK?

Not for this. langchain-mcp-adapters talks to the MCP server directly. The SDK (pip install browz-mcp) adds helpers such as a one-call LangGraph agent.

Can I filter which tools the agent gets?

Yes. get_tools() returns a list; keep only the tools the task needs, for example the session, navigate, snapshot and screenshot tools.

Is LangChain.js supported?

Yes. The JavaScript adapters take the same stdio command; @browz/sdk has langchainMcpServers() to build the config.

Get started

Download Browz. Every task, its own browser.

Then, on macOS or Linux, put the MCP server on your PATHcurl -fsSL https://gobrowz.com/agents/install.sh | sh

For Mac, Windows and Linux. Free for 5 profiles. Paid plans from $4.99 a month, with a 14-day refund on your first payment.