Skip to content
CloudBrowser SDKs & agent toolkits

Browser automation in the stack you know.

Official SDKs for .NET and Node.js wrap the CloudBrowser API, and our MCP toolkits plug real cloud browsers into the OpenAI Agents SDK, the Claude Agent SDK and your coding agents.

  • .NET and Node.js SDKs
  • Works with Puppeteer and Playwright
  • Drop-in MCP tools for agents
// dotnet add package CloudBrowserAiSharp.Puppeteer
using CloudBrowserAiSharp.Puppeteer.Browser;
using CloudBrowserAiSharp.Puppeteer.Extensions;

var token = Environment.GetEnvironmentVariable("CLOUDBROWSER_API_TOKEN");

// Opens a cloud browser and connects PuppeteerSharp in one call
var browser = await BrowserExtension.LaunchAsync(token);
var page = await browser.FirstPage();
await page.GoToAsync("https://example.com");

Console.WriteLine(await page.GetTitleAsync());
await browser.CloseAsync();
Program.cs

Official SDKs

Pick your language. Ship today.

Every SDK talks to the same API, so browsers, labels and saved sessions are shared across languages — and with your MCP clients and the ChatGPT plugin.

CloudBrowserAiSharp.Puppeteer

.NET 8 · NuGet · MIT

Open a cloud browser straight into PuppeteerSharp — one call returns a connected IBrowser — with AI and page helpers built in.

dotnet add package CloudBrowserAiSharp.Puppeteer
  • BrowserExtension.LaunchAsync(token) opens and connects in one call
  • Typed exceptions for tokens, subscriptions, units and browser limits
  • AI helpers: Query<T>, Summarize, Translate, ToMarkdown, ToCSV
  • Page helpers: FirstPage, ScrollToBottom, InnerText, ExistsSelector

CloudBrowserAiSharp

.NET 8 · NuGet · MIT

A typed client for the whole HTTP API — browsers, remote desktops, saved sessions and AI helpers — for any .NET service.

dotnet add package CloudBrowserAiSharp
  • BrowserService: Open, Get, Close, StartRemoteDesktop, StopRemoteDesktop
  • SessionService: list and remove saved sessions
  • AIService: Query, Summarize, Translate and typed conversions
  • Pair it with PuppeteerSharp or any CDP client

cloudbrowserai

Node.js 18+ · npm · TypeScript types

Open cloud browsers from Node.js and call the AI helpers, then drive the browser with puppeteer-core or Playwright.

npm install cloudbrowserai puppeteer-core
  • new BrowserService(token).open(options) returns the CDP address
  • AIService: query, summarize, translate, toJSON, toCSV, toMarkdown
  • Typed options for labels, proxies, keepOpen and saved sessions
  • Anything else is one call to the HTTP API

Python

HTTP API + Playwright · official client coming soon

No SDK needed today: open a browser with one requests call and drive it with Playwright over the Chrome DevTools Protocol.

pip install requests playwright
  • requests.post(…/Browser/Open) returns the CDP address
  • chromium.connect_over_cdp(address) attaches Playwright
  • Works the same with pyppeteer or any CDP library
  • Full example in the API quickstart

Quickstart

Four steps to your first browser.

  1. Create an account

    Start a 7-day free trial on Basic. No browser to install, no servers to run.

    cloudbrowser.ai/#pricing
  2. Copy your API token

    Find it in the dashboard and store it as an environment variable on your server.

    CLOUDBROWSER_API_TOKEN=…
  3. Install an SDK

    Add the package for your language — or skip it and call the HTTP API directly.

    npm install cloudbrowserai
  4. Open a browser

    Run the quickstart above. Watch it live from the dashboard, then close it.

    LaunchAsync(token)

AI helpers

Turn any page into typed data.

The SDKs wrap CloudBrowser’s AI helpers: ask a question about a page, summarize or translate it, or convert it into Markdown, CSV, JSON — or straight into your own .NET types.

  • Bring your own OpenAI key — AI usage is billed by OpenAI, with no markup from us.
  • Typed results in .NET — Query<decimal>, To<Plan[]> and friends.
  • Works on any HTML — pages from CloudBrowser or anywhere else.
using CloudBrowserAiSharp.Puppeteer.AIExtensions;
using CloudBrowserAiSharp.Puppeteer.Browser;
using CloudBrowserAiSharp.Puppeteer.Extensions;

var cloudBrowserToken = Environment.GetEnvironmentVariable("CLOUDBROWSER_API_TOKEN");
var openAiToken = Environment.GetEnvironmentVariable("OPENAI_API_KEY");

// AI helpers use your own OpenAI key
AIExtensions.SetGlobalSettings(cloudBrowserToken, openAiToken);

var browser = await BrowserExtension.LaunchAsync(cloudBrowserToken);
var page = await browser.FirstPage();
await page.GoToAsync("https://example.com/pricing");

var lowest = await page.Query<decimal>("What is the lowest monthly price?");
var summary = await page.Summarize<string>();
var markdown = await page.ToMarkdown();
var pricing = await page.To<PricingPage>();

await browser.CloseAsync();

class PricingPage {
    public string Title { get; set; }
    public string[] Plans { get; set; }
}
Program.cs

Agent frameworks

Give your own agents a real browser.

No SDK required: point any MCP-capable framework at the hosted server and your agent gets 20 browser tools — open, navigate, click, type, extract, screenshot and close.

  • OpenAI Agents SDK, Claude Agent SDK and the Responses API
  • Streamable HTTP with a Bearer token — or OAuth in apps
  • The same browsers and saved sessions as your SDK code
See every MCP tool
# pip install openai-agents
import asyncio, os
from agents import Agent, Runner
from agents.mcp import MCPServerStreamableHttp

async def main():
    async with MCPServerStreamableHttp(
        name="CloudBrowser",
        params={
            "url": "https://mcp.cloudbrowser.ai",
            "headers": {"Authorization": f"Bearer {os.environ['CLOUDBROWSER_API_TOKEN']}"},
        },
    ) as cloudbrowser:
        agent = Agent(
            name="Web researcher",
            instructions="Use CloudBrowser for anything on the web. Close every browser you open.",
            mcp_servers=[cloudbrowser],
        )
        result = await Runner.run(agent, "Open example.com, summarize it, then close the browser.")
        print(result.final_output)

asyncio.run(main())
agent.py

Coding agents

Skills for the agents you code with.

The open-source CloudBrowser skill teaches coding agents to run bounded browser jobs: open a browser, gather evidence, then close it and check that it is gone.

Claude Code

Add the hosted MCP server for every project, then sign in once.

claude mcp add --transport http --scope user cloudbrowser https://mcp.cloudbrowser.ai

Codex

Add the server, then install the CloudBrowser skill for bounded browser jobs.

npx @cloudbrowser/skills

Gemini CLI

One extension adds the server and the skill, and asks for your API token securely.

gemini extensions install https://github.com/CloudBrowser-AI/skills

Local MCP server

Run the open-source server over stdio with CLOUDBROWSER_API_TOKEN set. The hosted URL is usually newer.

npx @cloudbrowser/mcp-server

Core concepts

Six ideas behind every SDK.

Browsers

Each open call starts an isolated Chrome in its own container and returns a CDP WebSocket address you connect to.

Labels

Name a browser to find it in the dashboard and the API. A label can be used by one open browser at a time.

keepOpen

Seconds a browser stays open with nothing connected — 300 by default — so forgotten browsers close themselves.

Saved sessions

saveSession stores cookies and localStorage under the label; recoverSession brings them back next time.

Remote desktop

A live view of any browser, from the dashboard or the API — for debugging and for human handoffs.

Usage units

One unit is 30 seconds of browser time per tab. Your plan includes a monthly allowance.

FAQ

Questions, answered.

Explore the documentation
Which languages have an official CloudBrowser SDK?

.NET and Node.js. For .NET there are two NuGet packages: CloudBrowserAiSharp.Puppeteer, which opens a browser straight into PuppeteerSharp, and CloudBrowserAiSharp, a typed client for the whole HTTP API. For Node.js, the cloudbrowserai package on npm opens browsers and calls the AI helpers.

Is there a Python SDK?

An official Python client is on the way. You do not need one to get started: open a browser with a single requests call to the HTTP API and drive it with Playwright’s connect_over_cdp — or pyppeteer, or any other CDP library.

Do I need an SDK to use CloudBrowser?

No. CloudBrowser is a plain HTTP API plus the Chrome DevTools Protocol. Any language that can send an HTTP request and open a WebSocket can use it; the SDKs just save you the boilerplate.

Which .NET package should I use?

Use CloudBrowserAiSharp.Puppeteer if you automate with PuppeteerSharp — one call returns a connected browser and you get AI and page helpers. Use CloudBrowserAiSharp if you want a typed client for the API itself, for example to manage browsers, remote desktops and saved sessions from a back-end service.

Can I use the Node.js SDK with Playwright?

Yes. BrowserService.open() returns the browser’s CDP address. Pass it to Playwright’s chromium.connectOverCDP() instead of puppeteer.connect().

How do I give my own AI agent a browser?

Point your agent framework at the hosted MCP server, https://mcp.cloudbrowser.ai, with your API token as a Bearer header. The OpenAI Agents SDK, the Claude Agent SDK, the OpenAI Responses API and any other MCP-capable framework get CloudBrowser’s 20 browser tools without extra code.

What are CloudBrowser skills?

A ready-made skill for coding agents — Claude Code, Codex, Gemini CLI and more — that runs bounded browser jobs safely: open a browser, inspect pages, capture evidence, then close the browser and verify it is gone.

Where do I get an API token?

Create a CloudBrowser account, open the dashboard and copy your API token. Store it in an environment variable such as CLOUDBROWSER_API_TOKEN and keep it on the server.

Are the SDKs open source?

Yes — the SDK sources are on GitHub under https://github.com/CloudBrowser-AI. The .NET packages are MIT-licensed.

Build with real browsers today.

Start a 7-day free trial, install the SDK for your language and open your first cloud browser in minutes.