Skip to content

Move publisher CLI from tools/ to cmd/ - #326

Merged
domdomegg merged 2 commits into
mainfrom
adamj/move-publisher-to-cmd
Aug 29, 2025
Merged

domdomegg merged 2 commits into
mainfrom
adamj/move-publisher-to-cmd

Conversation

@domdomegg

Copy link
Copy Markdown
Member

Summary

Move the publisher CLI from tools/publisher/ to cmd/publisher/ as it's a proper application rather than a development utility.

This addresses feedback from @rdimitrov in PR #324 that the publisher CLI should be under cmd/ since it's not really a tool in the same sense as other helpers in the tools/ folder.

Changes

  • Moved tools/publisher/ directory to cmd/publisher/
  • Updated Makefile build and clean targets
  • Updated README.md documentation links
  • Updated VS Code launch configuration
  • Updated integration test script
  • Updated FAQ documentation
  • Fixed Go import paths in publisher code

Move the publisher CLI from tools/publisher/ to cmd/publisher/ as it's a proper application rather than a development utility. Update all references including:
- Makefile build and clean targets
- README.md documentation links
- VS Code launch configuration
- Integration test script
- FAQ documentation
- Go import paths

Addresses feedback from PR #324.
@domdomegg

Copy link
Copy Markdown
Member Author

@claude please review

@claude

claude Bot commented Aug 29, 2025 •

Copy link
Copy Markdown
Contributor

Claude finished @domdomegg's task —— View job


PR Review: Move publisher CLI from tools/ to cmd/

Summary: This PR appropriately moves the publisher CLI from tools/ to cmd/ directory, but has one missed documentation update.

Detailed Review

✅ What's Good

  1. Architectural reasoning is sound: Moving the publisher from tools/ to cmd/ aligns with Go conventions where cmd/ contains main applications and tools/ contains development utilities.

  2. Comprehensive file moves: All 17 publisher-related files were moved correctly from tools/publisher/ to cmd/publisher/.

  3. Import paths updated: Go import paths in the source files were properly updated:

    • cmd/publisher/main.go:7: "github.com/modelcontextprotocol/registry/cmd/publisher/commands"
    • cmd/publisher/commands/login.go:12: "github.com/modelcontextprotocol/registry/cmd/publisher/auth"
  4. Build system updated: Makefile correctly updated the publisher build target to use cmd/publisher.

  5. Documentation links updated: README.md publisher CLI section correctly references ./cmd/publisher/README.md.

  6. Development tooling updated:

    • VS Code launch configuration updated to use cmd/publisher/main.go
    • Integration test script updated to build from ./cmd/publisher
  7. FAQ documentation updated: docs/faq.md link updated to point to the new location.

❌ Issues Found

Documentation outdated: The project structure diagram in README.md (lines 149-151) still shows:

└── tools/                   # CLI tools and utilities
    ├── publisher/           # Server publishing tool
    └── validate-*.sh        # Schema validation tools

This should be updated to show publisher under cmd/ instead.

Suggestion

Update the project structure diagram to reflect that publisher is now under cmd/:

├── cmd/                     # Application entry points
+│   └── publisher/          # Server publishing tool
├── data/                    # Seed data
...
└── tools/                   # CLI tools and utilities
-    ├── publisher/           # Server publishing tool
     └── validate-*.sh        # Schema validation tools

Overall Assessment

This is a well-executed refactoring that improves the project structure. All functional changes are correct, and only one minor documentation update is needed.

Recommendation: Approve after fixing the project structure documentation.


@domdomegg

Copy link
Copy Markdown
Member Author

@claude can you fix that?

@claude

claude Bot commented Aug 29, 2025 •

Copy link
Copy Markdown
Contributor

Claude finished @domdomegg's task —— View job


Fixed Documentation Issue ✅

Updated the project structure diagram in README.md to correctly show the publisher CLI under cmd/ instead of tools/.

Completed Tasks:

  • Read current README.md to locate the project structure diagram
  • Update the diagram to show publisher under cmd/ instead of tools/
  • Commit and push the changes to the PR branch

The project structure diagram now correctly reflects the move from tools/publisher/ to cmd/publisher/ that this PR implements. The documentation is now consistent with the actual code structure.


| Branch: adamj/move-publisher-to-cmd

@domdomegg
domdomegg merged commit 53f4d2f into main Aug 29, 2025
6 checks passed
@domdomegg
domdomegg deleted the adamj/move-publisher-to-cmd branch August 29, 2025 13:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants