Skip to main content

Building Desktop Extensions with MCPB

Updated this week

This guide will help you build an MCP Bundle (.mcpb) to create a desktop extension for internal use, private distribution, or as a foundation for submission to Anthropic’s Connectors Directory.


1. Introduction

What is an MCPB?

MCPB (.mcpb) files are zip archives containing a local MCP server and manifest.json. They enable single-click installation in Claude Desktop, similar to browser extensions.

Key characteristics:

  • Runs locally on user's machine

  • Communicates via stdio transport

  • Bundles all dependencies

  • Works offline

  • No OAuth required

Learn more:


When should I use a local server (MCPB) vs a remote server?

Choose a local server (MCPB) for:

Internal Systems and Security

  • Access systems behind your firewall (JIRA, Confluence, internal wikis, private databases)

  • Seamless authentication - Uses existing SSO and browser sessions automatically, no token management

  • Zero-trust compliance - Operates within your corporate network boundaries without exposing internal resources publicly

Local Resources

  • Direct filesystem access for code editing and Git operations

  • Integration with locally installed tools (Docker, IDEs, databases)

  • Hardware integration and desktop application control

  • Privacy-sensitive operations that shouldn't leave the user's machine

Enterprise Deployment

  • One-click installation with built-in Node.js runtime (no dependencies to manage)

  • No cloud infrastructure, VPN configurations, or firewall rules required

  • Organization-level controls - Admins can upload custom extensions and manage access via allowlists

  • Complete control over authentication, authorization, and audit logs

Choose a remote connector for:

  • Cloud services and public APIs requiring centralized infrastructure

  • Distribution across claude on web, mobile and desktop

  • Services needing centralized updates across all users

  • OAuth flows requiring server-side token management

  • Public-facing integrations used by multiple organizations

Key difference: MCPBs run on the user's machine via stdio transport with access to local and internal resources. Remote connectors run on your servers via HTTPS and are accessed through Anthropic's infrastructure.

Real-world use: Organizations are building MCPBs as secure proxies to internal MCP servers, for internal documentation access, and to connect development tools while maintaining their security architecture.

For remote connector guidance: See MCP Partner FAQ for complete remote connector documentation.


2. Getting Started

Which programming language should I use?

Node.js is strongly recommended because:

  • Ships with Claude for macOS and Windows (zero installation friction for users)

  • Users don't need separate runtime installation

  • Best compatibility and reliability with Claude Desktop

  • Extensive MCP SDK support


What platforms should I support?

Claude Desktop runs on:

  • macOS (darwin)

  • Windows (win32)

Specify supported platforms in your manifest.json compatibility section.

Best practice: Test on both platforms even if you primarily develop on one.

Platform compatibility details: See MCPB Manifest Spec - Compatibility for platform specification and runtime requirements.


How do I create my first MCPB?

Follow this five-step process:

1. Install MCPB CLI: npm install -g @anthropic-ai/mcpb

2. Create your MCP server (see MCP SDK)

3. Run mcpb init to create manifest.json

4. Run mcpb pack to bundle

5. Install and test in Claude Desktop

For detailed implementation guidance:

  • MCPB Repository - Complete getting started guide, CLI usage, and specifications

  • MCPB Examples - Working reference implementations including "Hello World"

  • MCP SDK - Core protocol implementation

For comprehensive guidance on development, testing, and best practices, see the MCPB README's "For Bundle Developers" section.

Important: Before distributing your MCPB, review the testing and best practices guidance in the MCPB README to ensure quality.


3. Configuration

What is manifest.json?

The manifest.json file is required metadata that describes your MCPB - what it does, how to run it, which tools it provides, and what configuration it needs.

For the most up to date information, refer to the official MCPB Specification.


How do I add an icon?

Icons are optional but recommended for professional appearance.

Basic approach: Include icon.png file in your bundle root directory and reference it in manifest.json.

Requirements:

  • File name: icon.png (or custom path)

  • Size: 512×512px recommended (minimum 256×256px)

  • Format: PNG with transparency support

  • Location: Bundle root or specified path

Advanced options: Multiple icon variants for different sizes and themes (light/dark mode support).

Implementation details: See MCPB Manifest Spec - Icons for:

  • Icon field configuration

  • Multiple icon variants syntax

  • Size and theme specifications

  • Best practices and requirements


How do users configure my MCPB?

Define user_config section in manifest.json. Claude Desktop automatically creates a settings UI where users can configure your extension.

See MCPB Manifest Spec - User Configuration for the complete implementation:

  • Full schema and examples

  • All configuration types and properties

  • Validation constraints

  • Sensitive data handling

  • Multi-select patterns


How do users install my MCPB?

There are three different installation methods:

  1. Double-click - Download .mcpb file and double-click to open

  2. Drag-and-drop - Drag .mcpb file into Claude Desktop window

  3. File menu - Developer → Extensions → Install Extension → select .mcpb file

All methods open installation UI where users can:

  • Review extension details and permissions

  • Configure required settings

  • Grant necessary permissions

  • Complete installation

Installation scope: Per-user installation - each user must install separately on their own system.

User experience and admin controls: For detailed information about the end-user installation experience and enterprise admin controls (including Team/Enterprise organization management and policy configuration), see:


4. Resources

Official Documentation

MCPB Framework:

MCP Protocol:

Claude Desktop:


Getting Help

Support channels:

Community resources:

  • Check repository discussions for community Q&A

  • Follow release notes for latest updates

  • Review examples for implementation patterns


Ready for Public Distribution?

If you've built a working MCPB and want to submit it to the Anthropic Directory for broader distribution and discoverability, see our companion guide: Submitting to Anthropic Directory.

The directory guide covers additional requirements including:

  • Mandatory tool annotations for all tools

  • Privacy policy requirements

  • Minimum of three working examples

  • Testing credentials (if applicable)

  • Complete submission process and review timeline

Did this answer your question?