Package manager for the Cracking Shells ecosystem
Project description
Hatch
Introduction
Hatch is the package manager for managing Model Context Protocol (MCP) servers with environment isolation, multi-type dependency resolution, and multi-host deployment. Deploy MCP servers to Claude Desktop, VS Code, Cursor, Kiro, Codex, and other platforms with automatic dependency management.
The canonical documentation is at docs/index.md and published at https://hatch.readthedocs.io/en/latest/.
Key Features
- Environment Isolation — Create separate, isolated workspaces for different projects without conflicts
- Multi-Type Dependency Resolution — Automatically resolve and install system packages, Python packages, Docker containers, and Hatch packages
- Multi-Host Deployment — Configure MCP servers on multiple host platforms
- Package Validation — Ensure packages meet schema requirements before distribution
- Development-Focused — Optimized for rapid development and testing of MCP server ecosystems
Supported MCP Hosts
Hatch supports deployment to the following MCP host platforms:
- Claude Desktop — Anthropic's desktop application for Claude with native MCP support
- Claude Code — Claude integration for VS Code with MCP capabilities
- VS Code — Visual Studio Code with the MCP extension for tool integration
- Cursor — AI-first code editor with built-in MCP server support
- Kiro — Kiro IDE with MCP support
- Codex — OpenAI Codex with MCP server configuration support
- LM Studio — Local LLM inference platform with MCP server integration
- Google Gemini CLI — Command-line interface for Google's Gemini model with MCP support
Quick Start
Install from PyPI
pip install hatch-xclam
Verify installation:
hatch --version
Install from source
git clone https://github.com/CrackingShells/Hatch.git
cd Hatch
pip install -e .
Create your first environment and Hatch! MCP server package
# Create an isolated environment
hatch env create my_project
# Switch to it
hatch env use my_project
# Create a package template
hatch create my_mcp_server --description "My MCP server"
# Validate the package
hatch validate ./my_mcp_server
Deploy MCP servers to your tools
Package-First Deployment (Recommended) — Add a Hatch package and automatically configure it on Claude Desktop and Cursor:
hatch package add ./my_mcp_server --host claude-desktop,cursor
Direct Configuration (Advanced) — Configure arbitrary MCP servers on your hosts:
# Remote server example: GitHub MCP Server with authentication
export GIT_PAT_TOKEN=your_github_personal_access_token
hatch mcp configure github-mcp --host gemini \
--httpUrl https://api.github.com/mcp \
--header Authorization="Bearer $GIT_PAT_TOKEN"
# Local server example: Context7 via npx
hatch mcp configure context7 --host vscode \
--command npx --args "-y @upstash/context7-mcp"
Documentation
- Full Documentation — Complete reference and guides
- Getting Started — Quick start for users
- CLI Reference — All commands and options
- Tutorials — Step-by-step guides from installation to package authoring
- MCP Host Configuration — Deploy to multiple platforms
- Developer Docs — Architecture, implementation guides, and contribution guidelines
- Troubleshooting — Common issues and solutions
Contributing
We welcome contributions! See the How to Contribute guide for details.
Quick start for developers
- Fork and clone the repository
- Install dependencies:
pip install -e .andnpm install - Create a feature branch:
git checkout -b feat/your-feature - Make changes and add tests
- Use conventional commits:
npm run commitfor guided commits - Run tests:
wobble - Create a pull request
We use Conventional Commits for automated versioning. Use npm run commit for guided commit messages.
Getting Help
- Search existing GitHub Issues
- Read Troubleshooting for common problems
- Check Developer Onboarding for setup help
License
This project is licensed under the GNU Affero General Public License v3 — see LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hatch_xclam-0.7.1.tar.gz.
File metadata
- Download URL: hatch_xclam-0.7.1.tar.gz
- Upload date:
- Size: 188.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35bbfea21b69427f644bd0e0d8fa9cd664495e135eaae87d3552b1c91c3e4da4
|
|
| MD5 |
7707f01080304868e5133164dabaea78
|
|
| BLAKE2b-256 |
ca9e91ca186c974bee0bc4d374e4a3c79ac4003e0753db3dfa00ac89255a38c8
|
Provenance
The following attestation bundles were made for hatch_xclam-0.7.1.tar.gz:
Publisher:
publish.yml on CrackingShells/Hatch
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hatch_xclam-0.7.1.tar.gz -
Subject digest:
35bbfea21b69427f644bd0e0d8fa9cd664495e135eaae87d3552b1c91c3e4da4 - Sigstore transparency entry: 774928046
- Sigstore integration time:
-
Permalink:
CrackingShells/Hatch@a8f546e15639f15c29c6a181ab5b5c4b62fb09ea -
Branch / Tag:
refs/tags/v0.7.1 - Owner: https://github.com/CrackingShells
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@a8f546e15639f15c29c6a181ab5b5c4b62fb09ea -
Trigger Event:
push
-
Statement type:
File details
Details for the file hatch_xclam-0.7.1-py3-none-any.whl.
File metadata
- Download URL: hatch_xclam-0.7.1-py3-none-any.whl
- Upload date:
- Size: 239.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4ddab2c8c21688e85cb0193109d85b70d31ff4ef7ffde0a403aa46e76a4b6f12
|
|
| MD5 |
3828f1d74c395f082b27a7a19870dd3c
|
|
| BLAKE2b-256 |
f6b750838698b39727385333a57f11bb72005ccba210e855577b48c67199ff7c
|
Provenance
The following attestation bundles were made for hatch_xclam-0.7.1-py3-none-any.whl:
Publisher:
publish.yml on CrackingShells/Hatch
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
hatch_xclam-0.7.1-py3-none-any.whl -
Subject digest:
4ddab2c8c21688e85cb0193109d85b70d31ff4ef7ffde0a403aa46e76a4b6f12 - Sigstore transparency entry: 774928052
- Sigstore integration time:
-
Permalink:
CrackingShells/Hatch@a8f546e15639f15c29c6a181ab5b5c4b62fb09ea -
Branch / Tag:
refs/tags/v0.7.1 - Owner: https://github.com/CrackingShells
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@a8f546e15639f15c29c6a181ab5b5c4b62fb09ea -
Trigger Event:
push
-
Statement type: