Jan Nedbal 50ea80d64b Merge branch 'claude/phase-3-mcp'
Add Phase 3 metin-release-mcp — a thin MCP stdio server wrapping the
Phase 1 CLI as 8 release_* tools. Zero business logic: every tool
spawns metin-release --json, parses stdout, returns the envelope
verbatim. Tool schemas mirror the argparse signatures and are covered
by a parametrised test so drift fails loudly. Keeps existing Phase 1
code untouched.
2026-04-14 19:36:18 +02:00
2026-04-14 19:33:48 +02:00
2026-04-14 19:33:41 +02:00
2026-04-14 19:33:48 +02:00
2026-04-14 18:51:38 +02:00
2026-04-14 19:33:48 +02:00

metin-release-cli

Python CLI that orchestrates Metin2 client releases — builds manifests, signs them, uploads content-addressed blobs, and promotes the new release atomically.

Phase 1 wraps make-manifest.py and sign-manifest.py from the m2dev-client repo and adds remote diff, upload, promote, and public verification.

Install

pip install -e .[dev]

Usage

metin-release --help
metin-release release inspect --source /path/to/client
metin-release release publish --source ... --version 2026.04.14-1 ...

Add --json to get a machine-parseable envelope on stdout. Exit codes:

Code Meaning
0 success
1 operator / validation error
2 remote or network error
3 signing or integrity error
4 reserved (ERP sync, Phase 2+)

See docs/cli.md for the full command reference.

MCP server

The metin-release-mcp console script (Phase 3) exposes each Phase 1 subcommand as an MCP tool over stdio. Install with the mcp extra:

pip install -e .[mcp]
metin-release-mcp --help

See docs/mcp.md for tool list, client wiring, and error handling.

Description
Python CLI for orchestrating Metin2 client releases (Phase 1 of metin-release-cli-plan)
Readme MIT 116 KiB
2026-04-14 19:21:55 +02:00
Languages
Python 100%