Most package-manager integrations stop at reading and installing; this one also creates, builds and publishes, which means an assistant can take a package from template to repository without a terminal. That also means the same token of trust covers publishing, so decide deliberately whether an agent should hold it. The default configuration points at localhost, so expect to edit the repository list before anything useful resolves.
The full Criage client surface exposed over MCP. Everything the command-line client does is reachable as a tool, so package management can happen in the same conversation as the code that needs the package.
- Packages installed from a repository, removed, updated to the latest version, listed, and inspected in detail — `install_package`, `uninstall_package`, `update_package`, `list_packages`, `package_info`
- Repositories searched for packages, and one repository's information read — `search_packages`, `repository_info`
- New packages created from a template with a name, author and description, then built and published to a repository — `create_package`, `build_package`, `publish_package`
- All the archive formats the main client supports: criage, tar.zst, tar.lz4, tar.xz, tar.gz and zip
- Cross-platform operation on Windows, Linux and macOS
Go, to build the binary: `go mod tidy` then `go build -o criage-mcp-server .`, after which your client launches that binary directly. It speaks MCP over standard input and output. Configuration is read from `~/.criage/config.json` and created automatically with defaults if it is missing — the defaults point at a repository on `http://localhost:8080`, with package, cache and temp paths under `~/.criage`, a 30 second timeout, a concurrency of 4 and HTTPS not forced.
