launchfast-mcp
Version:
๐ Professional Amazon & Alibaba research tools for Claude AI - Product research, keyword intelligence, and supplier discovery via MCP
724 lines (557 loc) โข 16.8 kB
Markdown
# ๐ Production Deployment Guide
This guide covers deploying LaunchFast MCP Server to production for team use.
## ๐ Production Checklist
### Pre-Deployment
- [ ] Update API endpoints to production URLs
- [ ] Generate team API keys in LaunchFast admin dashboard
- [ ] Test all three tools with production credentials
- [ ] Review rate limits (20 req/min globally)
- [ ] Document team installation process
- [ ] Set up monitoring/alerting (optional)
### Post-Deployment
- [ ] Distribute installation instructions to team
- [ ] Test on all platforms (macOS, Windows, Linux)
- [ ] Verify rate limit headers in responses
- [ ] Monitor usage in admin dashboard
- [ ] Collect feedback from team
## ๐ Team API Key Management
### Generating Keys for Team Members
1. **Admin Dashboard**: Visit https://launchfastlegacyx.com/admin/usage-stats
2. **Navigate to "MCP API Keys" tab**
3. **For each team member**:
- Enter their email address
- Click "Generate API Key"
- Copy the generated key (format: `lf_<64_char_hex>`)
- Note their User ID (UUID)
4. **Send credentials securely**:
- Use your company's secure credential sharing method
- Do NOT send via plain email
- Consider using 1Password, LastPass, or similar
### Key Naming Convention
Use descriptive names in the admin dashboard:
```
John Doe - Claude Desktop - MacBook Pro
Jane Smith - Cursor - Windows Desktop
Team Shared - CI/CD Pipeline
```
### Key Rotation
**When to rotate:**
- Every 90 days (recommended)
- When a team member leaves
- If a key is compromised
- For security audits
**How to rotate:**
1. Generate new key for user
2. Update their MCP configuration
3. Test new key works
4. Delete old key in admin dashboard
## ๐ฆ Distribution Methods
### Option 1: NPM Package (Recommended for Teams)
**Publish to private npm registry** (npm, GitHub Packages, or Artifactory):
```bash
# Update package.json with registry
npm config set registry https://your-registry.com
# Publish
npm publish
```
**Team members install with**:
```bash
npm install -g @yourcompany/launchfast-mcp-server
```
### Option 2: Internal GitHub/GitLab Repository
**Host internally**:
```bash
git remote add company git@github.com:yourcompany/launchfast-mcp-internal.git
git push company main
```
**Team members clone**:
```bash
git clone git@github.com:yourcompany/launchfast-mcp-internal.git
cd launchfast-mcp-internal
npm install
npm run build
```
### Option 3: Pre-configured Package
**Create installable package**:
```bash
# Build production version
npm run build
# Create tarball
npm pack
# Distribute: launchfast-mcp-server-1.0.0.tgz
```
**Team installs**:
```bash
npm install -g ./launchfast-mcp-server-1.0.0.tgz
```
## ๐ ๏ธ Team Installation Script
Create a custom setup script for your team:
**`setup-team.sh`** (macOS/Linux):
```bash
#!/bin/bash
# LaunchFast MCP - Team Installation Script
# Company: Your Company Name
# Support: team-support@company.com
echo "๐ LaunchFast MCP Server - Team Setup"
echo "======================================"
echo ""
# Check Node.js version
NODE_VERSION=$(node -v 2>/dev/null)
if [ $? -ne 0 ]; then
echo "โ Node.js not found. Please install Node.js 18+ first:"
echo " https://nodejs.org/"
exit 1
fi
echo "โ
Node.js detected: $NODE_VERSION"
echo ""
# Prompt for platform
echo "Select your AI tool:"
echo "1. Claude Desktop"
echo "2. Cursor"
echo "3. Claude Code (VS Code)"
read -p "Enter choice (1-3): " PLATFORM
# Get credentials
echo ""
echo "Enter your LaunchFast credentials:"
read -p "API Key (lf_...): " API_KEY
read -p "User ID: " USER_ID
if [[ ! $API_KEY == lf_* ]]; then
echo "โ ๏ธ Warning: API key should start with 'lf_'"
fi
# Determine config path
case $PLATFORM in
1)
CONFIG_PATH="$HOME/Library/Application Support/Claude/claude_desktop_config.json"
TOOL_NAME="Claude Desktop"
;;
2)
CONFIG_PATH="$HOME/Library/Application Support/Cursor/User/globalStorage/settings.json"
TOOL_NAME="Cursor"
;;
3)
CONFIG_PATH="$HOME/Library/Application Support/Code/User/settings.json"
TOOL_NAME="Claude Code"
;;
*)
echo "โ Invalid selection"
exit 1
;;
esac
# Create config directory if needed
mkdir -p "$(dirname "$CONFIG_PATH")"
# Create/update config
cat > "$CONFIG_PATH" << EOF
{
"mcpServers": {
"launchfast": {
"command": "npx",
"args": ["-y", "@launchfast/mcp-server"],
"env": {
"LAUNCHFAST_API_URL": "https://launchfastlegacyx.com",
"LAUNCHFAST_API_KEY": "$API_KEY",
"LAUNCHFAST_USER_ID": "$USER_ID"
}
}
}
}
EOF
echo ""
echo "โ
Configuration saved to:"
echo " $CONFIG_PATH"
echo ""
echo "๐ Next steps:"
echo "1. Restart $TOOL_NAME"
echo "2. Look for ๐จ hammer icon"
echo "3. Test with: 'Research the market for portable chargers'"
echo ""
echo "๐ Need help? Contact: team-support@company.com"
```
**`setup-team.ps1`** (Windows PowerShell):
```powershell
# LaunchFast MCP - Team Installation Script (Windows)
Write-Host "๐ LaunchFast MCP Server - Team Setup" -ForegroundColor Green
Write-Host "======================================" -ForegroundColor Green
Write-Host ""
# Check Node.js
try {
$nodeVersion = node -v
Write-Host "โ
Node.js detected: $nodeVersion" -ForegroundColor Green
} catch {
Write-Host "โ Node.js not found. Please install Node.js 18+ first:" -ForegroundColor Red
Write-Host " https://nodejs.org/"
exit 1
}
# Prompt for platform
Write-Host ""
Write-Host "Select your AI tool:"
Write-Host "1. Claude Desktop"
Write-Host "2. Cursor"
Write-Host "3. Claude Code (VS Code)"
$platform = Read-Host "Enter choice (1-3)"
# Get credentials
Write-Host ""
Write-Host "Enter your LaunchFast credentials:"
$apiKey = Read-Host "API Key (lf_...)"
$userId = Read-Host "User ID"
# Determine config path
switch ($platform) {
1 {
$configPath = "$env:APPDATA\Claude\claude_desktop_config.json"
$toolName = "Claude Desktop"
}
2 {
$configPath = "$env:APPDATA\Cursor\User\globalStorage\settings.json"
$toolName = "Cursor"
}
3 {
$configPath = "$env:APPDATA\Code\User\settings.json"
$toolName = "Claude Code"
}
default {
Write-Host "โ Invalid selection" -ForegroundColor Red
exit 1
}
}
# Create config directory
$configDir = Split-Path $configPath
if (!(Test-Path $configDir)) {
New-Item -ItemType Directory -Path $configDir -Force | Out-Null
}
# Create config
$config = @{
mcpServers = @{
launchfast = @{
command = "npx"
args = @("-y", "@launchfast/mcp-server")
env = @{
LAUNCHFAST_API_URL = "https://launchfastlegacyx.com"
LAUNCHFAST_API_KEY = $apiKey
LAUNCHFAST_USER_ID = $userId
}
}
}
}
$config | ConvertTo-Json -Depth 10 | Set-Content $configPath
Write-Host ""
Write-Host "โ
Configuration saved to:" -ForegroundColor Green
Write-Host " $configPath"
Write-Host ""
Write-Host "๐ Next steps:"
Write-Host "1. Restart $toolName"
Write-Host "2. Look for ๐จ hammer icon"
Write-Host "3. Test with: 'Research the market for portable chargers'"
Write-Host ""
Write-Host "๐ Need help? Contact: team-support@company.com"
```
## ๐ Monitoring & Usage Tracking
### Admin Dashboard
Monitor team usage at: https://launchfastlegacyx.com/admin/usage-stats
**Available Metrics**:
- Total API calls per user
- Endpoints hit (market research, keywords, suppliers)
- Response times and error rates
- Rate limit status
- Last used timestamps
### Rate Limit Management
**Current Limits**:
- **Global**: 20 requests/minute across all MCP users
- **Per-key tracking**: Available in `mcp_usage_logs` table
**Monitoring Rate Limits**:
```sql
-- Check usage by user (last 24 hours)
SELECT
u.email,
COUNT(*) as requests,
AVG(processing_time_ms) as avg_response_time
FROM mcp_usage_logs l
JOIN user_profiles u ON l.user_id = u.id
WHERE l.created_at > NOW() - INTERVAL '24 hours'
GROUP BY u.email
ORDER BY requests DESC;
-- Check rate limit hits
SELECT
window_start,
window_end,
request_count
FROM mcp_rate_limits
WHERE window_end > NOW() - INTERVAL '1 hour'
ORDER BY window_start DESC;
```
### Alerting (Optional)
Set up Slack/email alerts for:
- Rate limit exceeded (429 errors)
- High error rates (>5% 5xx errors)
- Slow response times (>10s average)
- Unauthorized access attempts (401/403)
## ๐ Security Best Practices
### 1. API Key Security
**DO**:
- โ
Store keys in secure credential managers (1Password, etc.)
- โ
Use environment variables in CI/CD
- โ
Rotate keys every 90 days
- โ
Generate separate keys per user
- โ
Revoke keys immediately when team members leave
**DON'T**:
- โ Commit keys to git repositories
- โ Share keys via email or Slack
- โ Use the same key for multiple users
- โ Store keys in plain text files
### 2. Access Control
**Admin Access**:
- Only admins can generate/delete API keys
- Requires `role = 'admin'` in `user_profiles` table
- Review admin list quarterly
**User Isolation**:
- Each user has their own API key
- RLS policies enforce user-level data isolation
- Usage logs tied to individual user IDs
### 3. Network Security
**Production**:
- All traffic over HTTPS (TLS 1.3)
- API keys in headers, never in URLs
- CORS enabled for web dashboard only
## ๐จ Incident Response
### Key Compromised
1. **Immediately disable key** in admin dashboard
2. **Generate new key** for affected user
3. **Review usage logs** for suspicious activity:
```sql
SELECT * FROM mcp_usage_logs
WHERE api_key_id = 'compromised_key_id'
ORDER BY created_at DESC;
```
4. **Notify security team** if unusual patterns found
5. **Update user's configuration** with new key
### Rate Limit Exceeded
1. **Check global usage**: 20 req/min across all users
2. **Identify heavy users** in admin dashboard
3. **Options**:
- Enable caching (`useCache: true`)
- Reduce `limit` parameter (e.g., 10 instead of 50)
- Batch requests during off-peak hours
- Request rate limit increase
### Service Outage
1. **Check API status**: https://launchfastlegacyx.com/api/health
2. **View error logs** in admin dashboard
3. **Test with curl**:
```bash
curl -X POST https://launchfastlegacyx.com/api/products/research \
-H "X-LaunchFast-API-Key: lf_test" \
-H "Content-Type: application/json" \
-d '{"keyword": "test", "limit": 1}'
```
4. **Contact support**: support@launchfastlegacy.com
## ๐ Team Documentation
### Internal Wiki Template
Create a page in your company wiki with:
**Title**: LaunchFast MCP Server - Quick Start
**Sections**:
1. What is LaunchFast MCP?
2. How to get credentials
3. Installation instructions (link to setup scripts)
4. Example prompts
5. Troubleshooting
6. Support contacts
**Example prompts to share**:
```
# Market Research
"Research the Amazon market for [product]"
"Show me top products in [category] under $50"
"What's the competition level for [keyword]?"
# Keyword Analysis
"Find keyword opportunities for ASIN [asin]"
"Show me keyword gaps vs competitor [asin]"
"What keywords should I target for [product]?"
# Supplier Sourcing
"Find suppliers for [product] with low MOQ"
"Show me Gold Suppliers in China for [product]"
"Which supplier offers best quality for [product]?"
# Complete Workflow
"Help me launch [product] on Amazon - do complete research"
```
### Slack/Teams Channel
Create a dedicated channel: **#launchfast-mcp**
**Pin these resources**:
- Link to internal wiki page
- Installation scripts (as file attachments)
- Common troubleshooting tips
- Support contact info
**Example pinned message**:
```
๐ LaunchFast MCP Resources
๐ง Setup:
โข macOS: Run setup-team.sh
โข Windows: Run setup-team.ps1
โข Get credentials: https://launchfastlegacyx.com/admin/usage-stats
๐ Docs:
โข Wiki: [link to internal wiki]
โข GitHub: [link to internal repo]
๐ Support:
โข Email: team-support@company.com
โข This channel for quick questions
๐ฏ Example Prompts:
"Research the market for portable chargers"
"Find keywords for ASIN B08N5WRWNW"
"Search Alibaba for bluetooth speaker suppliers"
```
## ๐งช Testing Checklist
Before rolling out to the whole team, test thoroughly:
### Functional Tests
- [ ] Market research returns 50 products
- [ ] Keyword research handles 1-10 ASINs
- [ ] Supplier search returns 20 suppliers
- [ ] All filters work (price, rating, MOQ, etc.)
- [ ] Error handling is graceful
- [ ] Rate limits are respected
### Platform Tests
- [ ] Works on Claude Desktop (macOS)
- [ ] Works on Claude Desktop (Windows)
- [ ] Works on Cursor
- [ ] Works on Claude Code
- [ ] NPX method works
- [ ] Manual install method works
### Performance Tests
- [ ] Market research completes in <10s
- [ ] Keyword research completes in <15s per ASIN
- [ ] Supplier search completes in <15s
- [ ] Cached requests return in <3s
- [ ] No memory leaks over 1 hour usage
### Security Tests
- [ ] Invalid API key returns 401
- [ ] Disabled key returns 403
- [ ] Rate limit returns 429 with Retry-After
- [ ] Keys not exposed in logs
- [ ] HTTPS enforced
## ๐ Support Plan
### Tier 1: Self-Service
**Resources**:
- Internal wiki documentation
- QUICKSTART.md guide
- INSTALL.md troubleshooting section
- Slack/Teams channel for peer help
### Tier 2: Team Support
**Contact**: team-support@company.com
**Response Time**: 4 business hours
**Handles**:
- Installation issues
- Configuration help
- Basic troubleshooting
- Key generation/rotation
### Tier 3: LaunchFast Support
**Contact**: support@launchfastlegacy.com
**Response Time**: 24 business hours
**Handles**:
- API issues
- Rate limit increases
- Feature requests
- Bug reports
## ๐ฏ Success Metrics
Track these KPIs after deployment:
**Adoption**:
- % of team with MCP installed
- Active users per week
- Queries per user per day
**Performance**:
- Average response time
- Cache hit rate
- Error rate (<1% target)
**Value**:
- Time saved vs manual research
- Number of product launches aided
- Successful product identifications
**Example Dashboard Query**:
```sql
-- Weekly stats
SELECT
DATE_TRUNC('week', created_at) as week,
COUNT(DISTINCT user_id) as active_users,
COUNT(*) as total_queries,
AVG(processing_time_ms) as avg_response_ms,
COUNT(*) FILTER (WHERE status_code >= 400) * 100.0 / COUNT(*) as error_rate_pct
FROM mcp_usage_logs
WHERE created_at > NOW() - INTERVAL '90 days'
GROUP BY week
ORDER BY week DESC;
```
## ๐ Rollout Plan
### Phase 1: Pilot (Week 1)
**Participants**: 3-5 early adopters
**Goals**:
- Validate installation process
- Collect feedback on UX
- Identify edge cases
- Refine documentation
### Phase 2: Limited Release (Week 2-3)
**Participants**: 25% of team
**Goals**:
- Scale testing
- Monitor rate limits
- Gather usage patterns
- Update documentation
### Phase 3: General Availability (Week 4+)
**Participants**: Entire team
**Goals**:
- Full deployment
- Ongoing support
- Continuous improvement
- Feature requests
## ๐ Maintenance
### Weekly
- [ ] Review error logs
- [ ] Check rate limit usage
- [ ] Address support tickets
- [ ] Update documentation if needed
### Monthly
- [ ] Review usage metrics
- [ ] Collect team feedback
- [ ] Plan feature improvements
- [ ] Update dependencies
### Quarterly
- [ ] Rotate API keys
- [ ] Security audit
- [ ] Performance review
- [ ] Team training session
## ๐ Launch Announcement Template
**Subject**: ๐ New Tool: LaunchFast MCP Server for Amazon Research
**Body**:
```
Hi team,
We're excited to announce LaunchFast MCP Server - a powerful new tool that brings Amazon and Alibaba intelligence directly into Claude!
๐ฏ What can you do?
โข Research Amazon products and markets in seconds
โข Analyze keywords with gap detection
โข Find and score Alibaba suppliers
โข Get complete product launch strategies
โก Installation (takes 2 minutes):
1. Get credentials: [link to admin dashboard]
2. Run setup script: [link to scripts]
3. Restart your AI tool
4. Try it: "Research the market for portable chargers"
๐ Resources:
โข Quick Start Guide: [link]
โข Full Documentation: [link]
โข Support Channel: #launchfast-mcp
๐ Need help?
โข Slack: #launchfast-mcp
โข Email: team-support@company.com
We've tested this extensively with [pilot team members], and they're seeing 10x faster research times!
Questions? Join us for a live demo on [date/time].
Happy researching! ๐
[Your Team]
```
**Need deployment help? Contact: support@launchfastlegacy.com**