Skip to content

fix(scaffold): add mcp-server type templates and branch workflow generation#70

Merged
TMHSDigital merged 2 commits into
mainfrom
fix/scaffold-mcp-server-workflows
May 24, 2026
Merged

fix(scaffold): add mcp-server type templates and branch workflow generation#70
TMHSDigital merged 2 commits into
mainfrom
fix/scaffold-mcp-server-workflows

Conversation

@TMHSDigital
Copy link
Copy Markdown
Owner

Summary

  • Add six new Jinja2 templates for the mcp-server type: validate.mcp.yml.j2, release.mcp.yml.j2, pages.mcp.yml.j2, publish.yml.j2, package.json.j2, docs/index.mcp.html.j2
  • Branch create-tool.py workflow generation on args.type so mcp-server repos get four mcp-server-specific workflows plus publish.yml, while cursor-plugin repos continue to get the existing validate/release/pages unchanged
  • Generate package.json and docs/index.html for mcp-server type repos; cursor-plugin repos are unaffected

Root cause

create-tool.py wrote all workflow files unconditionally regardless of type. For --type mcp-server: validate.yml produced an empty jobs: block (Jinja2 branch had no else body), release.yml expected .cursor-plugin/plugin.json, pages.yml invoked build_site.py, and publish.yml/package.json/docs/index.html were never generated.

Verification

  • Freshly scaffolded mcp-server: all 7 workflow files pass YAML validation, cross-file references consistent (release.yml reads package.json which is now generated; pages.yml deploys docs/ which now contains index.html). Zero hand-fixing required.
  • Cursor-plugin output: byte-for-byte unchanged (no publish.yml, no package.json, validate.yml still uses cursor-plugin jobs).
  • python -m py_compile scaffold/create-tool.py passes.

Test plan

  • CI validate-scaffold dry-run passes (cursor-plugin + mcp-server addon path unchanged)
  • CI safety-scan passes (no email leak in new templates)
  • CI sync-check passes (no registry change in this PR)
  • CI version-bump-check passes (fix: commit with VERSION unchanged requires no bump per [skip version] -- actually this is a fix: commit so VERSION must be bumped... wait, VERSION is already at 1.15.0 and was bumped in the prior PR for the cfx-mcp registry addition)

🤖 Generated with Claude Code

…ration

Scaffold was generating cursor-plugin workflows unconditionally for all
repo types. An mcp-server scaffold produced: an empty validate.yml jobs
block, a release.yml that required .cursor-plugin/plugin.json, and a
pages.yml that invoked build_site.py.

Add six new templates for the mcp-server type path:
- validate.mcp.yml.j2: required-files check (README, CHANGELOG, AGENTS,
  CLAUDE, mcp-tools.json, site.json, LICENSE)
- release.mcp.yml.j2: simplified tag-from-package.json release workflow
- pages.mcp.yml.j2: static docs/ artifact deploy (no build_site.py)
- publish.yml.j2: npm publish on release event
- package.json.j2: parametrized Node package manifest
- docs/index.mcp.html.j2: placeholder GitHub Pages landing page

Branch create-tool.py workflow generation on args.type so mcp-server
repos get the four mcp-server workflows and cursor-plugin repos continue
to get validate, release, pages unchanged. Also generate package.json
and docs/index.html for mcp-server type repos.

Verified: freshly scaffolded mcp-server passes YAML validation for all
seven workflow files and is mutually consistent with zero hand-fixing.
Cursor-plugin output is byte-for-byte unchanged.

Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 24, 2026

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
@TMHSDigital TMHSDigital merged commit 9be7979 into main May 24, 2026
14 checks passed
@TMHSDigital TMHSDigital deleted the fix/scaffold-mcp-server-workflows branch May 24, 2026 23:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant