Installation

Detailed installation guide for MCP Hub Platform components, from source or Docker.

This guide covers installing MCP Hub Platform components individually or as a full stack. Choose the approach that fits your workflow: Docker-based for quick evaluation, or from-source for active development.

Prerequisites

System Requirements

ResourceMinimumRecommended
CPU2 cores4+ cores
RAM4 GB8+ GB
Disk10 GB free20+ GB free
OSLinux, macOS, Windows (WSL2)Linux or macOS

Required Software

SoftwareMinimum VersionInstallation
Go1.24+go.dev/dl
Docker24.0+docs.docker.com/get-docker
Docker Compose2.20+Included with Docker Desktop
MakeAnyPre-installed on macOS/Linux; choco install make on Windows
Git2.30+git-scm.com

Optional Software

SoftwarePurpose
golangci-lintCode linting (make lint-all)
gosecSecurity scanning (make security-all)
psqlDirect PostgreSQL access
redis-cliDirect Redis access
jqJSON formatting for API responses

Verify your Go version before proceeding – this is the most common source of build failures:

go version
# Expected: go version go1.24.x ...

The fastest path to a running platform. This starts all infrastructure services and the application containers.

Step 1: Clone and Start Infrastructure

git clone https://github.com/your-org/mcp-hub-platform.git
cd mcp-hub-platform
make up

Step 2: Verify Infrastructure Health

make ps

Wait until all services report as healthy. Pay special attention to:

  • minio-init must exit with code 0 (it creates required S3 buckets)
  • postgres must be healthy (init scripts create both mcphub and mcp_registry databases)

Step 3: Configure Environment

cp mcp-hub/.env.example mcp-hub/.env

Edit mcp-hub/.env with your configuration. See the Environment Variables section below for a complete reference.

Step 4: Start Application Services

# Terminal 1: Hub web dashboard
make dev

# Terminal 2: Analysis worker
make dev-worker

# Terminal 3: Registry
make dev-registry

Building from Source

Build individual components or the entire platform from source.

Build All Components

make build-all

This compiles all four projects and produces binaries in each component’s directory.

Build Individual Components

CommandComponentOutput
make build-hubMCP Hubmcp-hub/bin/mcp-hub
make build-clientMCP Clientmcp-client/bin/mcp-client
make build-registryMCP Registrymcp-registry/bin/mcp-registry
make build-scanMCP Scannermcp-scan/bin/mcp-scan

Install the MCP Client

The MCP Client is the component most users install locally. After building:

# Build the client
make build-client

# Copy to your PATH
cp mcp-client/bin/mcp-client /usr/local/bin/

# Verify installation
mcp-client version

Alternatively, install directly with Go:

go install github.com/your-org/mcp-hub-platform/mcp-client@latest

Environment Variables

The Hub is the most configuration-intensive component. Below is a reference of key environment variables.

Required Variables

VariableDescriptionExample
AUTH0_DOMAINAuth0 tenant domainyour-tenant.auth0.com
AUTH0_CLIENT_IDAuth0 application client IDabc123def456
AUTH0_CLIENT_SECRETAuth0 application client secretsecret_...
GITHUB_TOKENGitHub personal access token for repo ingestionghp_...
DATABASE_URLPostgreSQL connection stringpostgres://postgres:postgres@localhost:15432/mcphub?sslmode=disable
REDIS_URLRedis connection stringredis://localhost:6390/0

Optional Variables

VariableDescriptionDefault
STRIPE_API_KEYStripe API key for billing(none – billing disabled)
STRIPE_WEBHOOK_SECRETStripe webhook signing secret(none)
MINIO_ENDPOINTS3-compatible storage endpointlocalhost:9000
MINIO_ACCESS_KEYS3 access keyminioadmin
MINIO_SECRET_KEYS3 secret keyminioadmin
AMQP_URLAMQP broker connection stringamqp://guest:guest@localhost:5672/
HUB_PORTHub web server port8080
REGISTRY_PORTRegistry server port8081

Infrastructure Services Reference

The Docker Compose stack provides these services:

ServiceInternal PortExternal PortPurpose
postgres543215432PostgreSQL 16 with two databases
redis63796390Cache and rate limiting
minio9000 / 90019000 / 9001S3-compatible object storage
lavinmq5672 / 156725672 / 15672AMQP message broker

Verifying Your Installation

Check Build Artifacts

make status

This runs a health check across all four components and reports build status.

Run the Test Suite

# All tests
make test-all

# Per component
make test-hub
make test-client
make test-registry
make test-scan

Run Linters and Security Scans

make lint-all
make security-all

Verify Service Connectivity

# Hub dashboard
curl -sf http://localhost:8080/health && echo "Hub OK"

# Registry
curl -sf http://localhost:8081/health && echo "Registry OK"

# PostgreSQL
psql -h localhost -p 15432 -U postgres -c "SELECT version();"

# Redis
redis-cli -p 6390 ping

# MinIO
curl -sf http://localhost:9000/minio/health/live && echo "MinIO OK"

# LavinMQ
curl -sf http://localhost:15672/api/overview && echo "LavinMQ OK"

Uninstalling

To completely remove the platform and all data:

# Stop all containers
make down

# Remove all data volumes (irreversible)
make clean-volumes

# Remove build artifacts
make clean-all

Next Steps