@@ -641,6 +641,187 @@ git push origin main
641641
642642---
643643
644+ ## Phase 6: Version 1.4.0 - Major Enhancement Release
645+
646+ ### The Context (February 20, 2026)
647+
648+ After v1.3.1 was successfully published, we discovered and fixed critical issues while also implementing a major reorganization.
649+
650+ ### Changes in v1.4.0
651+
652+ ** Critical Bug Fix:**
653+ - Fixed MCP server stdio protocol corruption
654+ - Root cause: Default logging wrote to stderr, corrupting JSON-RPC 2.0 messages
655+ - Solution: FileHandler-only logging to ` ~/.cache/claude/mcp-devops-practices.log `
656+ - Impact: Server stability now matches dev-kit reliability
657+
658+ ** Major Feature: GG-SS Reorganization**
659+ - Reorganized all 11 practices with Group-Sequence prefix pattern
660+ - Created 4 logical groups for better discoverability:
661+ - Group 01: Workflow & Processes (3 practices)
662+ - Group 02: Version Control & PM (2 practices)
663+ - Group 03: Infrastructure & Configuration (3 practices)
664+ - Group 04: Documentation Standards (3 practices)
665+ - Used ` git mv ` to preserve 100% git history
666+ - Inspired by dev-kit's hierarchical organization
667+
668+ ** New Features:**
669+ - Added 2 new MCP tools: ` get_practice_summary ` , ` search_practices `
670+ - Enhanced ` list_practices ` with metadata extraction
671+ - Improved server from 237 → 337 lines
672+ - Total MCP tools: 5 → 7
673+
674+ ### Publication Process
675+
676+ #### Step 1: Building the Package
677+
678+ ``` bash
679+ cd /home/ukj/.mcp-servers/devops-practices-mcp
680+
681+ # Clean previous builds
682+ rm -rf dist/ build/ * .egg-info
683+
684+ # Build with uv (modern Python package manager)
685+ uv build
686+
687+ # Output:
688+ # Successfully built devops_practices_mcp-1.4.0-py3-none-any.whl (80 KB)
689+ # Successfully built devops_practices_mcp-1.4.0.tar.gz (64 KB)
690+ ```
691+
692+ #### Step 2: Publishing to PyPI
693+
694+ ``` bash
695+ # Using uv publish
696+ uv publish
697+
698+ # Note: .pypirc configuration recommended for credentials
699+ # ~/.pypirc with [pypi] section containing username and password
700+ ```
701+
702+ ** Result:** ✅ https://pypi.org/project/devops-practices-mcp/1.4.0/
703+
704+ #### Step 3: Publishing to MCP Registry
705+
706+ ** Challenge Discovered:** The registry structure had changed since v1.3.1!
707+
708+ ** Old path (from Phase 5):**
709+ ``` bash
710+ cd /tmp/registry/cli/mcp-publisher # ❌ No longer exists
711+ ```
712+
713+ ** New path (February 2026):**
714+ ``` bash
715+ cd /tmp/registry/cmd/publisher # ✅ Correct path
716+ ```
717+
718+ ** Updated Build Process:**
719+
720+ ``` bash
721+ # Clone registry (if not already done)
722+ cd /tmp
723+ git clone https://github.com/modelcontextprotocol/registry.git
724+
725+ # Navigate to CORRECT path
726+ cd /tmp/registry/cmd/publisher
727+
728+ # Build mcp-publisher
729+ mkdir -p ~ /registry/bin
730+ go build -o ~ /registry/bin/mcp-publisher
731+
732+ # Make executable
733+ chmod +x ~ /registry/bin/mcp-publisher
734+ ```
735+
736+ ** Authentication:**
737+ ``` bash
738+ ~ /registry/bin/mcp-publisher login github
739+ # Opens browser for GitHub OAuth
740+ # Authorize and return to terminal
741+ ```
742+
743+ ** Publish to Registry:**
744+ ``` bash
745+ cd /home/ukj/.mcp-servers/devops-practices-mcp
746+ ~ /registry/bin/mcp-publisher publish server.json
747+ ```
748+
749+ ** Expected Output:**
750+ ```
751+ Publishing server io.github.ai-4-devops/devops-practices to version 1.4.0
752+ Resolving package identifier: devops-practices-mcp
753+ Downloading package from pypi
754+ Extracting package
755+ Validating package
756+ Searching for 'mcp-name: io.github.ai-4-devops/devops-practices' in README
757+ ✓ Successfully published
758+ ✓ Server io.github.ai-4-devops/devops-practices version 1.4.0
759+ ```
760+
761+ ### Key Learnings from v1.4.0
762+
763+ ** 1. Registry Structure Evolution**
764+ - MCP registry moved from ` cli/mcp-publisher ` → ` cmd/publisher `
765+ - Always check current repository structure
766+ - Don't blindly follow old documentation
767+
768+ ** 2. Token Storage Security**
769+ - Use ` ~/.pypirc ` for PyPI credentials (industry standard)
770+ - Keep tokens outside repository
771+ - Use chmod 600 for proper permissions
772+
773+ ** 3. Breaking Changes Communication**
774+ - v1.4.0 had breaking changes (practice name changes)
775+ - Comprehensive CHANGELOG.md is critical
776+ - Provide migration guide with examples
777+
778+ ** 4. Git History Preservation**
779+ - ` git mv ` preserves 100% rename history
780+ - Shows as "renamed" not "deleted + added"
781+ - Critical for code archaeology and blame
782+
783+ ** 5. Version Bumping**
784+ - Update ALL version references consistently:
785+ - pyproject.toml
786+ - src/package/__ init__ .py
787+ - server.json (both places)
788+ - Update CHANGELOG.md
789+
790+ ### Timeline for v1.4.0
791+
792+ ** Preparation Phase:**
793+ - Fixed critical logging bug
794+ - Implemented GG-SS reorganization (11 practices renamed)
795+ - Enhanced MCP server with 2 new tools
796+ - Updated all documentation
797+ - Committed 12 commits on feature branch
798+ - Merged PR to main (no squash - preserved history)
799+ - Tagged v1.4.0 in git
800+
801+ ** Publication Phase:**
802+ 1 . Built package with ` uv build ` (5 seconds)
803+ 2 . Published to PyPI with ` uv publish ` (30 seconds)
804+ 3 . Discovered registry structure changed
805+ 4 . Found correct path: ` cmd/publisher `
806+ 5 . Built mcp-publisher CLI
807+ 6 . Authenticated with GitHub OAuth
808+ 7 . Published to MCP Registry (1 minute)
809+
810+ ** Total Time:** ~ 2 minutes (after initial troubleshooting)
811+
812+ ### Version Comparison
813+
814+ | Aspect | v1.3.1 | v1.4.0 | Change |
815+ | --------| --------| --------| --------|
816+ | Practices | 11 | 11 | Reorganized with GG-SS |
817+ | Templates | 7 | 7 | No change |
818+ | MCP Tools | 5 | 7 | +2 new tools |
819+ | Code Lines | 237 | 337 | +100 lines |
820+ | Stability | Unstable | Stable | Critical fix |
821+ | Organization | Flat | Hierarchical | 4 groups |
822+
823+ ---
824+
644825## Lessons Learned
645826
646827### 1. CI/CD Platform Migration
@@ -717,14 +898,27 @@ git push origin main
717898- ✅ Updated server.json to use PyPI
718899- ❌ Hit ownership validation error
719900
720- ### Day 4: Final Success
901+ ### Day 4: Final Success (v1.3.1)
721902- ✅ Added mcp-name marker to README
722903- ✅ Bumped version to 1.3.1
723904- ✅ Republished to PyPI
724905- ✅ Successfully published to MCP Registry
725906- ✅ Verified installation from both PyPI and MCP Registry
726907- ✅ Created this documentation
727908
909+ ### Day 5: Version 1.4.0 Release (February 20, 2026)
910+ - ✅ Fixed critical MCP server stability issue (stdio logging)
911+ - ✅ Implemented GG-SS reorganization (11 practices, 4 groups)
912+ - ✅ Added 2 new MCP tools (get_practice_summary, search_practices)
913+ - ✅ Enhanced list_practices with metadata
914+ - ✅ Updated comprehensive CHANGELOG.md
915+ - ✅ Merged PR #2 to main (12 commits, preserved history)
916+ - ✅ Tagged v1.4.0 in git
917+ - ✅ Built and published to PyPI
918+ - ✅ Discovered registry path changed (cli → cmd)
919+ - ✅ Published to MCP Registry with correct path
920+ - ✅ Updated JOURNEY.md with v1.4.0 experience
921+
728922---
729923
730924## Resources and References
@@ -771,12 +965,15 @@ For anyone attempting a similar journey:
771965
772966The DevOps Practices MCP Server is now live and available for the Claude AI community to use. It provides 11 best practices and 7 templates for infrastructure teams, all validated and published through proper channels.
773967
774- ** Final Status:**
968+ ** Final Status (v1.4.0) :**
775969- ✅ GitHub: https://github.com/ai-4-devops/devops-practices
776- - ✅ PyPI: https://pypi.org/project/devops-practices-mcp/
777- - ✅ MCP Registry: io.github.ai-4-devops/devops-practices v1.3.1
970+ - ✅ PyPI: https://pypi.org/project/devops-practices-mcp/ (v1.4.0)
971+ - ✅ MCP Registry: io.github.ai-4-devops/devops-practices v1.4.0
972+ - ✅ Git Tags: v1.0.0, v1.2.0, v1.3.0, v1.4.0
778973- ✅ CI/CD: GitHub Actions with 7 validation jobs
779- - ✅ Documentation: Comprehensive README and journey documentation
974+ - ✅ Documentation: Comprehensive README, CHANGELOG, and journey documentation
975+ - ✅ Features: 11 practices (GG-SS organized), 7 templates, 7 MCP tools
976+ - ✅ Stability: Critical logging fix - server now stable
780977
781978Thank you for following this journey. I hope it helps you publish your own MCP servers successfully!
782979
0 commit comments