@rv404/mcp-launchpad
v1.0.0
Published
Unified MCP router for Claude Code - ClickUp, Notion, GitHub, Slack, n8n, Gemini, QuickBooks, Firecrawl, YouTube, Kie.ai
Maintainers
Readme
MCP Launchpad
A unified MCP (Model Context Protocol) router for Claude Code that connects to multiple backend services: ClickUp, Notion, GitHub, Slack, n8n, Gemini, QuickBooks, Firecrawl, YouTube, and Kie.ai.
Installation
npm (Recommended)
npm install -g @404-rv/mcp-launchpadFrom Source
git clone https://github.com/404-rv/mcp-launchpad.git
cd mcp-launchpad
npm install
npm run buildQuick Start
1. Configure Environment
Create a .env file with your API keys (only include services you use):
# ClickUp
CLICKUP_API_KEY=your-key
CLICKUP_TEAM_ID=your-team-id
# Notion
NOTION_API_KEY=your-key
# GitHub
GITHUB_PERSONAL_ACCESS_TOKEN=your-token
# Slack
SLACK_BOT_TOKEN=xoxb-your-token
SLACK_TEAM_ID=your-team-id
# n8n
N8N_API_URL=https://your-instance.app.n8n.cloud
N8N_API_KEY=your-key
# Gemini
GOOGLE_API_KEY=your-key
GEMINI_IMAGE_OUTPUT_DIR=./output
# QuickBooks (requires OAuth setup)
QUICKBOOKS_CLIENT_ID=your-client-id
QUICKBOOKS_CLIENT_SECRET=your-secret
QUICKBOOKS_REFRESH_TOKEN=your-refresh-token
QUICKBOOKS_REALM_ID=your-realm-id
# Firecrawl
FIRECRAWL_API_KEY=your-key
# Kie.ai
KIE_API_KEY=your-key2. Add to Claude
Choose your setup method based on how you use Claude:
Option A: Claude Code CLI (Pro/Teams)
# If installed via npm
claude mcp add router -- npx @404-rv/mcp-launchpad
# If installed from source
claude mcp add router -- node /path/to/mcp-launchpad/dist/index.jsOption B: Claude Desktop App (Max users)
Edit your Claude Desktop config file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Add this to the mcpServers section:
{
"mcpServers": {
"router": {
"command": "node",
"args": ["C:/path/to/mcp-launchpad/dist/index.js"],
"env": {
"NOTION_API_KEY": "your-key",
"SLACK_BOT_TOKEN": "your-token"
}
}
}
}Then restart Claude Desktop.
Option C: VS Code Extension
Open VS Code Settings (JSON) and add:
{
"claude.mcpServers": {
"router": {
"command": "node",
"args": ["/path/to/mcp-launchpad/dist/index.js"],
"env": {
"NOTION_API_KEY": "your-key"
}
}
}
}3. Verify
- Claude Code CLI: Run
/mcpto seerouterlisted - Claude Desktop: Check Settings > Developer > MCP Servers
- VS Code: Check Claude extension settings
Available Tools
| Tool | Description |
|------|-------------|
| route_request | Route a request to a backend service |
| list_services | List all available services |
| list_actions | List actions for a specific service |
| health_check | Check connectivity to all services |
Usage Examples
// List available services
mcp__router__list_services
// Get actions for a service
mcp__router__list_actions({ service: "slack" })
// Send a Slack message
mcp__router__route_request({
service: "slack",
action: "post_message",
params: { channel: "#general", text: "Hello!" }
})
// Create a Notion page
mcp__router__route_request({
service: "notion",
action: "create_page",
params: { parent_id: "...", title: "New Page" }
})
// Generate an image with Gemini
mcp__router__route_request({
service: "gemini",
action: "generate_image",
params: {
prompt: "A serene mountain landscape",
outputPath: "./output/mountain.png"
}
})Supported Services
| Service | Actions | |---------|---------| | ClickUp | Tasks, spaces, lists, time tracking | | Notion | Pages, databases, blocks | | GitHub | Repos, issues, PRs, files | | Slack | Messages, channels, users | | n8n | Workflows, executions | | Gemini | Text generation, image generation | | QuickBooks | Invoices, customers, reports | | Firecrawl | Web scraping, crawling | | YouTube | Video metadata, transcripts | | Kie.ai | Image editing, generation |
Project Structure
mcp-launchpad/
├── src/
│ ├── index.ts # MCP server entry point
│ ├── router.ts # Request routing logic
│ ├── types.ts # TypeScript types
│ └── backends/ # Service implementations
│ ├── clickup.ts
│ ├── notion.ts
│ ├── github.ts
│ ├── slack.ts
│ ├── n8n.ts
│ ├── gemini.ts
│ ├── quickbooks.ts
│ ├── firecrawl.ts
│ ├── youtube.ts
│ └── kie.ts
├── dist/ # Compiled output
├── package.json
├── tsconfig.json
└── .env.exampleTroubleshooting
"Cannot find module"
- Run
npm installandnpm run build - Check the path in your MCP config
"Service not available"
- Check your
.envfile has the required keys - Run
health_checkto see which services are connected
"Authentication failed"
- Verify API keys are correct
- Check token permissions/scopes
Development
# Install dependencies
npm install
# Build
npm run build
# Watch mode
npm run devLicense
MIT
