Skip to main content
Glama
PUBLISHING_GUIDE.md5.33 kB
# Publishing MCPBrowser Extension to VS Code Marketplace ## Step-by-Step Publishing Guide ### 1. Create Icon (PNG from SVG) You need a 128x128 PNG icon. I've created an SVG, now convert it: **Option A: Online Converter** 1. Go to https://cloudconvert.com/svg-to-png 2. Upload `icon.svg` 3. Set dimensions to 128x128 4. Download as `icon.png` 5. Move to `extension/` folder **Option B: Using Inkscape (if installed)** ```bash inkscape icon.svg -w 128 -h 128 -o icon.png ``` **Option C: PowerShell with ImageMagick** ```powershell # Install ImageMagick from https://imagemagick.org/ magick icon.svg -resize 128x128 icon.png ``` ### 2. Get Publisher Account 1. **Create Microsoft Account** (if you don't have one) - Go to https://account.microsoft.com/ 2. **Create Azure DevOps Organization** - Go to https://dev.azure.com/ - Click "Start free" - Create organization (e.g., "cherchyk-extensions") 3. **Get Personal Access Token (PAT)** - In Azure DevOps, click User Settings icon (top right) - Select "Personal access tokens" - Click "+ New Token" - Settings: - **Name**: "VS Code Marketplace" - **Organization**: Your organization - **Expiration**: Custom (1 year recommended) - **Scopes**: Click "Show all scopes" - **Check ONLY**: "Marketplace" → "Manage" - Click "Create" - **IMPORTANT**: Copy the token immediately - you won't see it again! - Save it in a password manager ### 3. Create Publisher First time only: ```bash # Install vsce globally npm install -g @vscode/vsce # Create publisher vsce create-publisher cherchyk # You'll be prompted for: # - Publisher name: cherchyk # - Personal Access Token: [paste your PAT] ``` Alternative: Create publisher via web - Go to https://marketplace.visualstudio.com/manage/publishers - Click "Create publisher" - ID: cherchyk - Name: Your display name - Save ### 4. Login to Publisher ```bash vsce login cherchyk # Enter your PAT when prompted ``` ### 5. Pre-Publishing Checklist Before publishing, verify: ```bash cd extension # Check package.json is correct cat package.json # Verify icon exists ls icon.png # Test packaging (creates .vsix file) vsce package # Install locally to test # In VS Code: Extensions → ... → Install from VSIX → select .vsix file ``` Test the extension thoroughly: - [ ] Install from .vsix works - [ ] Extension activates on startup - [ ] Configure command works - [ ] Remove command works - [ ] Notification appears if not configured - [ ] mcp.json is modified correctly - [ ] Works on your platform (Windows/Mac/Linux) ### 6. Publish to Marketplace **Initial Publish:** ```bash vsce publish ``` **Future Updates:** ```bash # Patch version (0.1.0 → 0.1.1) vsce publish patch # Minor version (0.1.0 → 0.2.0) vsce publish minor # Major version (0.1.0 → 1.0.0) vsce publish major # Specific version vsce publish 1.0.0 ``` ### 7. Verify Publication 1. Check marketplace page (wait 5-10 minutes for indexing): - https://marketplace.visualstudio.com/items?itemName=cherchyk.mcpbrowser 2. Search in VS Code: - Extensions → Search "MCPBrowser" - Should see your extension 3. Install and test from marketplace ### 8. Post-Publication **Create GitHub Release:** ```bash cd .. git tag extension-v0.1.0 git push origin extension-v0.1.0 ``` On GitHub: 1. Go to Releases → "Create a new release" 2. Tag: extension-v0.1.0 3. Title: "MCPBrowser v0.1.0" 4. Description: Copy from CHANGELOG.md 5. Attach the .vsix file 6. Publish release **Update Main README:** Add extension link to main project README: ```markdown ## Installation ### Option 1: VS Code Extension (Recommended) Install [MCPBrowser](https://marketplace.visualstudio.com/items?itemName=cherchyk.mcpbrowser) from the VS Code Marketplace. ``` ### 9. Troubleshooting **"Error: Missing publisher name"** - Add `"publisher": "cherchyk"` to package.json **"Error: Missing icon"** - Ensure icon.png exists in extension folder - Remove `"icon": "icon.png"` line if no icon yet **"Error: Invalid Personal Access Token"** - Token expired - create new one - Run `vsce login cherchyk` again **"Error: Extension already published"** - Bump version number in package.json - Or use `vsce publish patch/minor/major` ### 10. Maintenance **Updating the Extension:** 1. Make changes to code 2. Update CHANGELOG.md 3. Test locally 4. Run `vsce publish patch` (or minor/major) 5. Create GitHub release **Unpublishing (if needed):** ```bash vsce unpublish cherchyk.mcpbrowser ``` ### Quick Reference ```bash # Install tools npm install -g @vscode/vsce # Package without publishing (creates .vsix) vsce package # Publish vsce publish # Update version and publish vsce publish patch # 0.1.0 → 0.1.1 vsce publish minor # 0.1.0 → 0.2.0 vsce publish major # 0.1.0 → 1.0.0 ``` ## Support - VS Code Extension API: https://code.visualstudio.com/api - Publishing Extensions: https://code.visualstudio.com/api/working-with-extensions/publishing-extension - Marketplace Management: https://marketplace.visualstudio.com/manage ## Next Steps 1. ✅ Convert icon.svg to icon.png 2. ✅ Create Azure DevOps account 3. ✅ Get Personal Access Token 4. ✅ Install vsce: `npm install -g @vscode/vsce` 5. ✅ Test package: `vsce package` 6. ✅ Publish: `vsce publish` 7. ✅ Celebrate! 🎉

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cherchyk/MCPBrowser'

If you have feedback or need assistance with the MCP directory API, please join our Discord server