From 33186d276a12f0607da8ef8f326ab599769e85cc Mon Sep 17 00:00:00 2001 From: Devid HW Date: Wed, 22 Apr 2026 05:04:18 +0700 Subject: [PATCH] ci: add automated MCP publishing and client registration docs - Update release workflow with MCP_PUBLISH_TOKEN for automated publishing - Remove OIDC requirement (using classic token) - Add MCP client registration commands for Windsurf, Claude, VS Code/Cursor - Add verification steps for post-release checking --- .github/workflows/release.yml | 24 ++++++-------- .windsurf/workflows/release.md | 58 +++++++++++++++++++++++++++++++++- 2 files changed, 66 insertions(+), 16 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 19bc6dc..9c31cfe 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -160,7 +160,6 @@ jobs: runs-on: ubuntu-latest permissions: contents: read - id-token: write steps: - name: Download MCP package uses: actions/download-artifact@v4 @@ -174,18 +173,13 @@ jobs: chmod +x mcp-publisher sudo mv mcp-publisher /usr/local/bin/ - - name: Authenticate and Publish + - name: Publish to MCP Registry run: | - echo "=== MCP Publish ===" - echo "This step requires manual authentication." - echo "For CI/CD, use OIDC authentication (requires registry setup)" - echo "" - echo "To publish manually from local machine:" - echo "1. Download the MCP package from the release" - echo "2. Run: mcp-publisher login github" - echo "3. Run: mcp-publisher publish" - echo "" - echo "For automated publishing, configure OIDC:" - echo "mcp-publisher login github-oidc" - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + echo "=== MCP Registry Publish ===" + # Login with pre-authenticated token + echo "${{ secrets.MCP_PUBLISH_TOKEN }}" | mcp-publisher login github --token-stdin + + # Publish the server + mcp-publisher publish + + echo "✓ Published to MCP Registry" diff --git a/.windsurf/workflows/release.md b/.windsurf/workflows/release.md index 5192a36..06c450c 100644 --- a/.windsurf/workflows/release.md +++ b/.windsurf/workflows/release.md @@ -131,7 +131,60 @@ Edit `~/.cursor/mcp.json` or `.vscode/mcp.json`: } ``` -## 10. Post-Release Verification +## 10. MCP Client Registration + +After installing the binary, register with your MCP clients: + +### Windsurf + +// turbo +```bash +# Add to Windsurf MCP config +cat >> ~/.codeium/windsurf/mcp_config.json << 'EOF' +{ + "mcpServers": { + "io.github.masdevid/mt5-quant": { + "command": "~/.local/bin/mt5-quant", + "disabled": false, + "registry": "io.github.masdevid/mt5-quant" + } + } +} +EOF +``` + +### Claude Code + +// turbo +```bash +# Register with Claude Code +claude mcp add io.github.masdevid/mt5-quant -- ~/.local/bin/mt5-quant + +# Or with custom name +claude mcp add mt5-quant -- ~/.local/bin/mt5-quant +``` + +### VS Code / Cursor + +// turbo +```bash +# Add to Cursor MCP config +mkdir -p ~/.cursor +cat > ~/.cursor/mcp.json << 'EOF' +{ + "mcpServers": { + "mt5-quant": { + "command": "~/.local/bin/mt5-quant", + "env": { + "MT5_MCP_HOME": "~/.config/mt5-quant" + } + } + } +} +EOF +``` + +## 11. Post-Release Verification // turbo ```bash @@ -140,6 +193,9 @@ Edit `~/.cursor/mcp.json` or `.vscode/mcp.json`: # Verify tool count ./target/release/mt5-quant 2>&1 | head -20 + +# Check MCP registration +claude mcp list ``` ## Quick Release Commands