Claude Desktop Extensions: One-click MCP Server Installation
Overview
Anthropic has introduced Desktop Extensions (.mcpb files), a new packaging format that simplifies installing Model Context Protocol (MCP) servers for Claude Desktop. The system transforms what previously required developer tools, manual configuration, and dependency management into a single-click installation process.
The Problem Being Solved
Previously, setting up local MCP servers demanded:
- Installation of Node.js, Python, or other runtimes
- Manual editing of JSON configuration files
- Resolution of package version conflicts
- Manual server updates
- No centralized discovery mechanism
These barriers restricted MCP server access primarily to technical users, despite their powerful capabilities for local data access and application integration.
What Changed
Before: Users needed to install runtimes, manually configure files, restart applications, and troubleshoot dependency issues.
After: Download a .mcpb file, double-click it, and click "Install"—no terminal access required.
Technical Architecture
Desktop Extensions are ZIP archives containing:
manifest.json(required) - Extension metadata and configurationserver/directory - MCP server implementationdependencies/- All bundled packagesicon.png(optional) - Extension visual representation
The manifest describes the extension's features, runtime requirements, and any user configuration needs. Claude Desktop handles complexity internally, including:
- Built-in Node.js runtime
- Automatic updates
- Secure credential storage in OS keychain
Manifest Structure
The minimal manifest includes version, name, description, author information, and server configuration. Optional fields enable feature declarations (tools and prompts), user configuration requirements, cross-platform compatibility, and metadata for discoverability.
Template literals like ${__dirname}, ${user_config.key}, and system variables enable dynamic configuration. Extensions can define sensitive fields (API keys) that Claude Desktop automatically stores securely and inject at runtime.
Building an Extension
The process involves four steps:
- Initialize: Run
npx @anthropic-ai/mcpb initto generate a manifest - Configure: Define any required user inputs in the manifest
- Package: Execute
npx @anthropic-ai/mcpb packto create the.mcpbfile - Test: Drag the file into Claude Desktop settings to verify functionality
Advanced Features
Extensions support:
- Cross-platform adaptation with OS-specific command overrides
- Dynamic configuration using template literals for runtime values
- Feature declaration describing available tools and prompts upfront
- User configuration with validation for required settings
Extension Directory & Submission
Anthropic is launching a curated directory of extensions within Claude Desktop, enabling one-click discovery and installation. Developers can submit extensions through a form after:
- Following submission guidelines
- Testing on Windows and macOS
- Passing quality and security review
Open Ecosystem Commitment
The company is open-sourcing:
- Complete MCPB specification
- Packaging and validation tooling
- Reference implementation code
- TypeScript types and schemas
This enables "package once, run anywhere" compatibility across multiple AI desktop applications, not just Claude.
Security & Enterprise Features
User protections include OS keychain storage for sensitive data and automatic updates. Enterprise capabilities include:
- Group Policy (Windows) and MDM (macOS) management
- Pre-installation of approved extensions
- Publisher/extension blocklisting
- Directory disabling
- Private extension directories
Getting Started
Developers should review documentation at the open-source repository and run initialization commands. Desktop users can update Claude and access the Extensions section in Settings. Enterprise administrators can reference deployment documentation for organization-wide configuration.
Innovation Example
Internally, Anthropic used Desktop Extensions to package a GameBoy emulator integration, allowing Claude to directly control game states—demonstrating potential for connecting AI capabilities to local tools and applications.