Chrome AppleScript
FreeNot checkedControl Chrome browser through AppleScript automation on macOS
About
Control Chrome browser through AppleScript automation on macOS
README
⚠️ IMPORTANT NOTICE: This project is being renamed from DXT (Desktop Extensions) to MCPB (MCP Bundles)
If you're looking for the DXT tools, they have been renamed to MCPB. Please update your dependencies and tooling:
dxtCLI is nowmcpb.dxtfiles are now.mcpbfiles@anthropic-ai/dxtpackage will be moved to@anthropic-ai/mcpb
MCP Bundles (.mcpb) are zip archives containing a local MCP server and a manifest.json that describes the server and its capabilities. The format is spiritually similar to Chrome extensions (.crx) or VS Code extensions (.vsix), enabling end users to install local MCP servers with a single click.
This repository provides three components: The bundle specification in MANIFEST.md, a CLI tool for creating bundles (see CLI.md), and the code used by Claude for macOS and Windows to load and verify MCPB bundles (src/index.ts).
- For developers of local MCP servers, we aim to make distribution and installation of said servers convenient
- For developers of apps supporting local MCP servers, we aim to make it easy to add support for MCPB bundles
Claude for macOS and Windows uses the code in this repository to enable single-click installation of local MCP servers, including a number of end user-friendly features - such as automatic updates, easy configuration of MCP servers and the variables and parameters they need, and a curated directory. We are committed to the open ecosystem around MCP servers and believe that its ability to be universally adopted by multiple applications and services has benefits developers aiming to connect AI tools to other apps and services. Consequently, we're open-sourcing the MCP Bundle specification, toolchain, and the schemas and key functions used by Claude for macOS and Windows to implement its own support of MCP Bundles. It is our hope that the mcpb format doesn't just make local MCP servers more portable for Claude, but other AI desktop applications, too.
For Bundle Developers
At the core, MCPB are simple zip files containing your entire MCP server and a manifest.json. Consequently, turning a local MCP server into a bundle is straightforward: You just have to put all your required files in a folder, create a manifest.json, and then create an archive.
To make this process easier, this package offers a CLI that helps you with the creation of both the manifest.json and the final .mcpb file. To install it, run:
npm install -g @anthropic-ai/mcpb
- In a folder containing your local MCP server, run
mcpb init. This command will guide you through the creation of amanifest.json. - Run
mcpb packto create amcpbfile. - Now, any app implementing support for MCPB can run your local MCP server. As an example, open the file with Claude for macOS and Windows to show an installation dialog.
You can find the full spec for the manifest.json and all its mandatory and optional fields in MANIFEST.md. Examples for bundles can be found in examples.
Prompt Template for AI Tools
AI tools like Claude Code are particularly good at creating MCP bundles when informed about the spec. When prompting an AI coding tool to build a bundle, briefly explain what your bundle aims to do - then add the following context to your instructions.
I want to build this as a MCP Bundle, abbreviated as "MCPB". Please follow these steps:
- Read the specifications thoroughly:
- https://github.com/anthropics/mcpb/blob/main/README.md - MCPB architecture overview, capabilities, and integration patterns
- https://github.com/anthropics/mcpb/blob/main/MANIFEST.md - Complete bundle manifest structure and field definitions
- https://github.com/anthropics/mcpb/tree/main/examples - Reference implementations including a "Hello World" example
- Create a proper bundle structure:
- Generate a valid manifest.json following the MANIFEST.md spec
- Implement an MCP server using @modelcontextprotocol/sdk with proper tool definitions
- Include proper error handling, security measures, and timeout management
- Follow best development practices:
- Implement proper MCP protocol communication via stdio transport
- Structure tools with clear schemas, validation, and consistent JSON responses
- Make use of the fact that this bundle will be running locally
- Add appropriate logging and debugging capabilities
- Include proper documentation and setup instructions
- Test considerations:
- Validate that all tool calls return properly structured responses
- Verify manifest loads correctly and host integration works
Generate complete, production-ready code that can be immediately tested. Focus on defensive programming, clear error messages, and following the exact MCPB specifications to ensure compatibility with the ecosystem.
Directory Structures
Minimal Bundle
A manifest.json is the only required file.
Example: Node.js Bundle
bundle.mcpb (ZIP file)
├── manifest.json # Required: Bundle metadata and configuration
├── server/ # Server files
│ └── index.js # Main entry point
├── node_modules/ # Bundled dependencies
├── package.json # Optional: NPM package definition
├── icon.png # Optional: Bundle icon
└── assets/ # Optional: Additional assets
Example: Python Bundle
bundle.mcpb (ZIP file)
├── manifest.json # Required: Bundle metadata and configuration
├── server/ # Server files
│ ├── main.py # Main entry point
│ └── utils.py # Additional modules
├── lib/ # Bundled Python packages
├── requirements.txt # Optional: Python dependencies list
└── icon.png # Optional: Bundle icon
Example: Binary Bundle
bundle.mcpb (ZIP file)
├── manifest.json # Required: Bundle metadata and configuration
├── server/ # Server files
│ ├── my-server # Unix executable
│ ├── my-server.exe # Windows executable
└── icon.png # Optional: Bundle icon
Language Choice Recommendation
We recommend implementing MCP servers in Node.js rather than Python to reduce installation friction. Node.js ships with Claude for macOS and Windows, which means your bundle will work out-of-the-box for users without requiring them to install additional Python runtimes (or you to package them manually).
Bundling Dependencies
UV Runtime (v0.4+):
- Use
server.type = "uv"in manifest - Include
pyproject.tomlwith dependencies (no bundled packages needed) - Host application manages Python and dependencies automatically
- Works cross-platform without user Python installation
- See
examples/hello-world-uv
Python Bundles (Traditional):
- Use
server.type = "python"in manifest - Bundle all required packages in
server/lib/directory - OR bundle a complete virtual environment in
server/venv/ - Use tools like
pip-tools,poetry, orpipenvto create reproducible bundles - Set
PYTHONPATHto include bundled packages viamcp_config.env - Limitation: Cannot portably bundle compiled dependencies (e.g., pydantic, which the MCP Python SDK requires)
Node.js Bundles:
- Run
npm install --productionto createnode_modules - Bundle the entire
node_modulesdirectory with your bundle - Use
npm cioryarn install --frozen-lockfilefor reproducible builds - Server entry point specified in manifest.json's
server.entry_point
Binary Bundles:
- Static linking preferred for maximum compatibility
- Include all required shared libraries if dynamic linking used
- Test on clean systems without development tools
Contributing
We welcome contributions! Please see our Contributing Guide for details.
Development Setup
# Clone the repository
git clone https://github.com/anthropics/mcpb.git
cd mcpb
# Install dependencies
yarn
# Build the project
yarn build
# Run tests
yarn test
Release Process
- Update version in
package.json - Create a pull request with version bump
- After merge, create a GitHub release
- Package will be automatically published to npm
License
This project is licensed under the Apache License 2.0 for new contributions, with existing code under MIT - see the LICENSE file for details.
Installing Chrome AppleScript
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/modelcontextprotocol/mcpbFAQ
Is Chrome AppleScript MCP free?
Yes, Chrome AppleScript MCP is free — one-click install via Unyly at no cost.
Does Chrome AppleScript need an API key?
No, Chrome AppleScript runs without API keys or environment variables.
Is Chrome AppleScript hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Chrome AppleScript in Claude Desktop, Claude Code or Cursor?
Open Chrome AppleScript on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Playwright
Browser automation, scraping, screenshots
by MicrosoftPuppeteer
Browser automation and web scraping.
by modelcontextprotocolopentabs-dev/opentabs
Plugin-based MCP server + Chrome extension that gives AI agents access to web applications through the user's authenticated browser session. 100+ plugins with a
by opentabs-devrobhunter/agentdeals
1,500+ developer infrastructure deals, free tiers, and startup programs across 54 categories. Search deals, compare vendors, plan stacks, and track pricing chan
by robhunterhlydecker/ucsc-genome-mcp
MCP server to interact with the UCSC Genome Browser API, letting you find genomes, chromosomes, and more.
by hlydecker34892002/bilibili-mcp-js
A MCP server that supports searching for Bilibili content. Provides LangChain integration examples and test scripts.
by 34892002achiya-automation/safari-mcp
Native Safari browser automation for AI agents with 80+ tools. No Chrome dependency, optimized for Apple Silicon with 60% less CPU overhead.
by achiya-automationagent-infra/mcp-server-browser
Browser automation capabilities using Puppeteer, both support local and remote browser connection.
by bytedanceaparajithn/agent-scraper-mcp
Web scraping MCP server for AI agents. 6 tools: clean content extraction, structured scraping with CSS selectors, full-page screenshots via Playwright, link ext
by aparajithnapireno/DOMShell
Browse the web using filesystem commands (ls, cd, grep, click). 38 MCP tools map Chrome's Accessibility Tree to a virtual filesystem via a Chrome Extension.
by apirenoCompare Chrome AppleScript with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All browse MCPs
