실행 중에 주고받는 handshake 말고도, 제대로 된 MCP server 는 작은 manifest 를 하나 같이 내보내. 보통 pyproject.toml 이나 package.json 이고, server 이름과 버전, 진입점, 그리고 지원하겠다고 약속한 protocol revision 을 적어둬. Registry 도, package manager 도, Claude Desktop 의 'server 추가' 화면도 전부 이걸 읽어.
Metadata 에는 protocol revision 을 명시적으로 못박아. Changelog 는 짧고 정직하게 — "v1.4.0: refund_order tool 추가, protocol-version 2025-03-26 지원 중단." 나중의 너도, 업그레이드하는 다음 user 도 그 한 줄에 기대게 돼. Versioning track 의 표를 그대로 옮긴 compatibility 절도 같이 넣어두면 좋고.
Python server 는 uv 나 uvx 로 진입점을 열어 ([project.scripts] my-server = "my_server:main"). 그러면 어느 host 든 명령 하나로 (uvx my-server) server 를 띄울 수 있고, user 는 virtualenv 를 걱정할 일이 없어. TypeScript 나 Node server 라면 npx 가 같은 자리에 있고.