MCP Hub
Back to servers

@seungmanchoi/app-publisher-mcp

MCP server for vibe coders - AI app icon generation, auto-resizing for iOS/Android, and store publishing automation

Updated
Feb 16, 2026

Quick Install

npx -y @seungmanchoi/app-publisher-mcp

App Publisher MCP

An MCP (Model Context Protocol) server built for vibe coders - generate app icons with AI, auto-resize for iOS/Android, and publish to app stores, all from your AI coding assistant.

Stop wasting time on Figma for app icons or manually resizing images for every screen density. Just describe what you want, and let AI handle the rest.

What It Does

ToolDescription
generate_iconGenerate app icons using Google Gemini AI
resize_iconsAuto-resize to all iOS & Android required sizes
generate_splashGenerate splash screen designs with AI
generate_screenshotGenerate app store screenshot mockups
setup_fastlaneGenerate fastlane config for store publishing
publish_iosPublish to App Store via fastlane
publish_androidPublish to Google Play via fastlane
configure_api_keySet your Gemini API key
configure_modelChoose AI model (speed vs quality)
get_statusCheck current configuration

Quick Start

1. Install in Claude Code

claude mcp add app-publisher -- npx @seungmanchoi/app-publisher-mcp

Or with environment variables:

claude mcp add app-publisher \
  -e GEMINI_API_KEY=your_api_key_here \
  -e GEMINI_MODEL=gemini-2.5-flash-image \
  -- npx @seungmanchoi/app-publisher-mcp

2. Manual Configuration

Add to your Claude Code MCP config (~/.claude.json):

{
  "mcpServers": {
    "app-publisher": {
      "command": "npx",
      "args": ["@seungmanchoi/app-publisher-mcp"],
      "env": {
        "GEMINI_API_KEY": "your_api_key_here",
        "GEMINI_MODEL": "gemini-2.5-flash-image"
      }
    }
  }
}

3. Restart Claude Code

After adding the MCP server, restart Claude Code to connect.

Getting Your API Keys

Google Gemini API Key (Required)

The Gemini API key is needed for AI image generation (icons, splash screens, screenshots).

Step-by-Step

  1. Go to Google AI Studio
  2. Sign in with your Google account
  3. Click "Create API key"
  4. Select a Google Cloud project (or create a new one)
  5. Copy the generated API key (starts with AIza...)

Set the API Key

Option A: Environment variable (recommended)

claude mcp add app-publisher \
  -e GEMINI_API_KEY=AIzaSy... \
  -- npx @seungmanchoi/app-publisher-mcp

Option B: Runtime configuration Once the MCP is connected, use the configure_api_key tool:

"Set my Gemini API key to AIzaSy..."

Option C: Config file The key is stored in ~/.app-publisher/config.json and persists across sessions.

Pricing

ModelPrice per ImageSpeedQuality
gemini-2.5-flash-image~$0.0393-5 secStandard
gemini-3-pro-image-preview~$0.035 (4K: ~$0.24)10-15 secBest

Google provides a free tier with generous limits for development. Check Google AI pricing for current rates.

Apple App Store Connect (For iOS Publishing)

Required only if you want to publish to the App Store.

Step-by-Step

  1. Go to App Store Connect
  2. Sign in with your Apple Developer account ($99/year membership required)
  3. Go to Users and Access > Integrations > App Store Connect API
  4. Click "Generate API Key"
  5. Give it a name (e.g., "app-publisher-mcp")
  6. Select "Admin" role
  7. Download the .p8 private key file (you can only download it once!)
  8. Note down:
    • Key ID (e.g., ABC1234567)
    • Issuer ID (shown at the top of the page)

Where to Get Apple Developer Account

  1. Go to Apple Developer Program
  2. Click "Enroll"
  3. Sign in with your Apple ID
  4. Pay $99/year membership fee
  5. Wait for approval (usually 24-48 hours)

Google Play Console (For Android Publishing)

Required only if you want to publish to Google Play.

Step-by-Step

  1. Go to Google Play Console
  2. Sign in with your Google account (one-time $25 registration fee)
  3. Go to Setup > API access
  4. Click "Link" to connect to a Google Cloud project
  5. Under Service accounts, click "Create new service account"
  6. In Google Cloud Console:
    • Create a new service account
    • Name it (e.g., "app-publisher-mcp")
    • Grant role: Service Account User
  7. Create a JSON key for the service account:
    • Go to Keys tab > Add Key > Create new key > JSON
    • Download the JSON key file
  8. Back in Google Play Console:
    • Click "Grant access" next to the service account
    • Grant "Release manager" permission

Where to Get Google Play Developer Account

  1. Go to Google Play Console signup
  2. Sign in with your Google account
  3. Pay $25 one-time registration fee
  4. Complete developer profile
  5. Verify identity (may take a few days)

Fastlane (For Store Publishing)

Required only if you want to use the publish_ios or publish_android tools.

# macOS
brew install fastlane

# or via Ruby
gem install fastlane

Usage Examples

Generate an App Icon

"Generate an app icon for a meditation app - a lotus flower with calm blue and purple gradient"

The AI will create a professional app icon and save it to ~/app-publisher-assets/.

Resize for All Platforms

"Resize the icon at ~/app-publisher-assets/icon_xxx.png for both iOS and Android"

This generates:

  • iOS: 15 sizes (20px ~ 1024px) + Xcode Contents.json
  • Android: 6 sizes (mdpi ~ xxxhdpi) + Play Store 512x512

Generate Store Screenshots

"Generate a screenshot mockup for a fitness app showing a workout dashboard with progress charts"

Set Up Fastlane

"Set up fastlane for my project at ~/myapp with bundle ID com.example.myapp"

This creates:

  • fastlane/Fastfile - Build and deploy lanes
  • fastlane/Appfile - App configuration
  • fastlane/metadata/ - Store listing metadata structure

Publish to Stores

"Publish my iOS app to the App Store. Project is at ~/myapp"

"Publish my Android app to the internal testing track"

Generated Icon Sizes

iOS (15 icons + Contents.json)

UsageSizes
Notification20@2x (40px), 20@3x (60px)
Settings29@2x (58px), 29@3x (87px)
Spotlight40@2x (80px), 40@3x (120px)
App60@2x (120px), 60@3x (180px)
iPad20, 29, 40, 76, 76@2x (152px), 83.5@2x (167px)
App Store1024x1024

The generated Contents.json is fully compatible with Xcode - just drag the AppIcon.appiconset folder into your asset catalog.

Android (6 icons)

DensitySizeFolder
mdpi48x48mipmap-mdpi
hdpi72x72mipmap-hdpi
xhdpi96x96mipmap-xhdpi
xxhdpi144x144mipmap-xxhdpi
xxxhdpi192x192mipmap-xxxhdpi
Play Store512x512-

AI Model Selection

ModelBest ForSpeedQuality
gemini-2.5-flash-imageRapid prototyping, iterationFast (3-5s)Good
gemini-3-pro-image-previewFinal assets, 4K outputSlower (10-15s)Best

Set your preferred model:

"Set the model to gemini-3-pro-image-preview"

Or use environment variable:

GEMINI_MODEL=gemini-3-pro-image-preview

Configuration Priority

Settings are resolved in this order (highest priority first):

  1. Per-request parameter - model parameter in tool calls
  2. Environment variable - GEMINI_API_KEY, GEMINI_MODEL
  3. Config file - ~/.app-publisher/config.json
  4. Default - gemini-2.5-flash-image

Vibe Coding Workflow

This MCP is designed for the vibe coding workflow - build your app with AI, then ship it:

1. Build your app with Claude Code
2. "Generate an icon for my app" → AI creates the icon
3. "Resize it for iOS and Android" → All sizes generated
4. "Set up fastlane and publish" → App goes to stores

No design skills needed. No Figma. No manual resizing. Just vibe and ship.

Troubleshooting

"Gemini API key not configured"

Set your API key using one of the methods described in Getting Your API Keys.

"This model only supports text output"

The model you're using doesn't support image generation. Switch to gemini-2.5-flash-image or gemini-3-pro-image-preview.

"fastlane is not installed"

Install fastlane: brew install fastlane (macOS) or gem install fastlane (Ruby).

Icon looks wrong at small sizes

Try a simpler icon design. Complex designs don't work well at 20x20 or 29x29 pixels. Use bold shapes and minimal detail.

MCP not connecting

  1. Restart Claude Code after adding the MCP server
  2. Check the server config in ~/.claude.json
  3. Verify Node.js is installed: node --version

Development

git clone https://github.com/seungmanchoi/app-publisher-mcp.git
cd app-publisher-mcp
npm install
npm run build
npm run lint

License

MIT

Reviews

No reviews yet

Sign in to write a review