Skip to main content
This is a Developer Resource for building Chrome extensions with WebMCP. If you’re looking to use the MCP-B Extension, see the Extension Overview.

Overview

The @mcp-b/extension-tools package provides Model Context Protocol (MCP) wrappers for Chrome Extension APIs. It enables standardized, protocol-based access to browser extension functionalities, allowing MCP clients to interact with Chrome’s extensive API surface.

Prerequisites

  • Chrome Extension with Manifest V3
  • @mcp-b/transports package installed
  • @modelcontextprotocol/sdk installed
  • Required Chrome permissions in manifest.json
  • TypeScript 5.0+ (recommended)
  • Understanding of Chrome Extension APIs and MCP protocol

Installation

Key Features

  • MCP wrappers for 62+ Chrome Extension APIs
  • Full TypeScript support with comprehensive type definitions
  • Zod-based input validation and schema generation
  • Structured error handling and response formatting
  • Compatible with Manifest V3 extensions

Architecture

The package wraps Chrome Extension APIs into MCP-compatible tools, enabling remote procedure calls through the MCP protocol. Each Chrome API is wrapped in its own tools class that extends BaseApiTools.

Basic Usage

Setting Up in Background Script

Client-Side Usage

Available API Wrappers

Core Browser APIs

TabsApiTools

WindowsApiTools

StorageApiTools

Content & Scripting APIs

ScriptingApiTools

Data Management APIs

BookmarksApiTools

HistoryApiTools

DownloadsApiTools

System APIs

SystemApiTools

Real-World Example: Extension Connector

Here’s an example of connecting to an MCP extension:

Tool Registration Options

Each API tools class accepts configuration options to control which tools are registered:

Input Validation

All tools use Zod schemas for input validation:

Error Handling

The package provides structured error responses:

Security Considerations

Manifest Permissions

Ensure your extension manifest includes required permissions:

Tool Access Control

Control which tools are exposed:

Complete API List

The package provides wrappers for 62+ Chrome APIs including:
  • Browser Control: tabs, windows, browserAction, pageAction
  • Storage: storage, cookies, sessions
  • Content: bookmarks, history, downloads, topSites
  • Communication: runtime, messaging, notifications
  • DevTools: debugger, devtools
  • System: system.cpu, system.memory, system.storage, system.display
  • Identity: identity, oauth2
  • Enterprise: enterprise.platformKeys, enterprise.deviceAttributes
  • Privacy: privacy, contentSettings
  • Network: proxy, vpnProvider, webRequest
  • Management: management, permissions, commands

TypeScript Support

Full TypeScript definitions are provided:

@mcp-b/transports

Extension transport layer

Extension Guide

MCP-B browser extension

Core Concepts

Extension architecture

Security Guide

Extension security best practices
See also:

External Resources