tiny-browse
Uses an installed Brave browser as the runtime browser for searches and page rendering, without bundling a separate browser.
Provides a fallback web search engine when Google is blocked or over its rate budget, allowing searches to continue through DuckDuckGo.
Enables web search by loading Google results in the user's installed browser, reading the top results, and returning clean Markdown within a token budget.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
tiny-browse
Give any AI agent the web, in 126 kB.
tiny-browse searches Google in the Chrome you already have, reads the best results and returns clean Markdown that fits a hard token budget. One zero-dependency package: an MCP server for any agent and a Node.js library for your own code. No bundled browser, no API keys.
Related MCP server: Neurobird Search MCP server
Any agent, any model. MCP over stdio or HTTP, plus a JSON API. No LLM inside.
Tiny on disk. A 126 kB download with zero runtime dependencies, using your installed Chrome, Edge, Brave or Chromium instead of downloading a browser of its own.
Answers, not HTML. Main content only, with headings, code, tables and lists kept, inside a hard
max_tokenslimit.Careful by default. Strict search rate limits, no access to private networks, pages read without your cookies.
Install
Requires Node.js 22+ and Chrome, Chromium, Edge or Brave (or use the no-Chrome mode).
From npm
npm install -g @shubhamcodess/tiny-browse
tiny-browse doctorAgents can also run it without installing: npx -y @shubhamcodess/tiny-browse mcp.
From the latest GitHub release
npm install -g https://github.com/shubhamcodess/tiny-browse/releases/latest/download/tiny-browse.tgzFrom source
git clone https://github.com/shubhamcodess/tiny-browse.git
cd tiny-browse
npm ci && npm run build
npm link # or run: node dist/cli.jsUse cases
Web search for your own local agents. An agent running on a local model has no web access. Add tiny-browse as an MCP server and it can search and read pages, with no API keys and no cloud service.
Answers grounded in sources. Every page comes back with its URL and only its relevant sections, so an assistant can answer from current pages and cite them instead of relying on what the model remembers.
Current docs for coding agents. Libraries change after a model's training cutoff. web_fetch with focus pulls just the part of the documentation the agent needs, as clean Markdown with code blocks intact.
Connect to an agent
Claude Code
claude mcp add tiny-browse -- npx -y @shubhamcodess/tiny-browse mcpVS Code (GitHub Copilot): .vscode/mcp.json
{
"servers": {
"tiny-browse": { "type": "stdio", "command": "npx", "args": ["-y", "@shubhamcodess/tiny-browse", "mcp"] }
}
}Cursor, Claude Desktop and most other clients
{
"mcpServers": {
"tiny-browse": { "command": "npx", "args": ["-y", "@shubhamcodess/tiny-browse", "mcp"] }
}
}tiny-browse config <client> prints the setup for claude-code, claude-desktop, cursor, vscode, codex or generic. To share one warm Chrome between several agents, run tiny-browse serve --http 7777 and connect to http://127.0.0.1:7777/mcp.
The agent gets two tools: web_search (search and read the top results) and web_fetch (read URLs, optionally narrowed with focus or continued with cursor). Parameters: TOOLS.md.
Use as a dependency
npm install @shubhamcodess/tiny-browseimport { webSearch, webFetch } from "@shubhamcodess/tiny-browse";
const { results, pages, markdown } = await webSearch({ query: "node.js stream backpressure", read: 2 });
for (const r of results) console.log(r.rank, r.title, r.url);
const docs = await webFetch({ urls: ["https://go.dev/doc/effective_go"], focus: "goroutines", max_tokens: 2000 });
console.log(docs.pages[0].markdown);Each call starts what it needs and shuts it down before returning, so short-lived CLIs exit straight away. Use createClient() to reuse one Chrome across calls, mode: "http" to skip Chrome entirely, and TinyBrowseError.code to handle failures. Full API: LIBRARY.md.
How it works
Search. Google's results page is loaded in your Chrome and read three independent ways (layout, accessibility tree, selectors), merged by vote, so a page redesign rarely breaks it. If Google is blocked or over its rate budget, DuckDuckGo and Bing are tried.
Read. Each page is fetched over plain HTTP and rendered with scripts off, which is fast; pages that need JavaScript get a full Chrome load. The faster way is remembered per site.
Extract. The main content is found by how the page is laid out, not by class names. Menus, ads, cookie banners and hidden text are dropped.
Fit. The page is split into sections by heading and packed into
max_tokens, keeping the sections most relevant to the query.
Limitations
Search engines may block automated browsers, depending on your network. Running
tiny-browse loginonce usually helps with Google. Reading pages is not affected.Sites that refuse automated access with a bot check are reported as
blocked, never bypassed.No PDF support yet.
Tested on macOS and Linux. Windows is untested.
Troubleshooting
Problem | Fix |
| Install Chrome, or set |
Google keeps showing CAPTCHAs | Run |
Chrome won't start on Ubuntu 24.04 |
|
| Another |
A page comes back thin | Use |
Documentation
Settings, rate limits, environment variables, flags | |
Tool parameters, output, HTTP server | |
Functions, options, errors, lifecycle | |
Architecture and findings | |
Development setup and releases | |
Reporting vulnerabilities, threat model | |
License
MIT © Shubham Prakash
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Web search and any page as LLM-ready Markdown for AI agents. Free keyless tier, no signup.
Web search, Google SERP, page extraction to markdown and cited answers for AI agents.
Web search and page-reading for AI agents. One-click OAuth connect, or a Caesar API key.
A real browser for your agent: screenshots, page checks, Markdown and PDFs.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables AI agents to perform web searches, fetch and extract page content, and crawl sites with caching, rate limiting, and robots.txt compliance, all without needing API keys.17649 PyPI2MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to perform live web searches with ranked results and extracted page passages, plus clean markdown extraction of any URL.MIT
- AlicenseNot gradedqualityBmaintenanceEnables LLM agents to fetch web pages and receive clean, readable markdown with token budgeting and link extraction.1MIT
- AlicenseAqualityBmaintenanceEnables agents to search the live web and fetch URLs as clean Markdown, returning ranked search results and paginated page content through two lightweight tools.223 npmMIT