Skip to main content
Glama

3GPP MCP Server

by edhijlu
mcp-setup.sh5.15 kB
#!/bin/bash # MCP Setup Script for 3GPP MCP Server v2 # This script helps set up the MCP server for use with Claude Desktop set -e echo "🚀 3GPP MCP Server v2 Setup" echo "==============================" # Colors for output RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # No Color # Function to print colored output print_status() { echo -e "${GREEN}✅ $1${NC}" } print_warning() { echo -e "${YELLOW}⚠️ $1${NC}" } print_error() { echo -e "${RED}❌ $1${NC}" } print_info() { echo -e "${BLUE}ℹ️ $1${NC}" } # Check if Node.js is installed check_nodejs() { if command -v node &> /dev/null; then NODE_VERSION=$(node --version) print_status "Node.js found: $NODE_VERSION" # Extract major version number NODE_MAJOR=$(echo $NODE_VERSION | cut -d'.' -f1 | sed 's/v//') if [ "$NODE_MAJOR" -ge 18 ]; then print_status "Node.js version is compatible (18+)" else print_error "Node.js version $NODE_VERSION is too old. Please install Node.js 18 or higher." exit 1 fi else print_error "Node.js not found. Please install Node.js 18+ from https://nodejs.org" exit 1 fi } # Check if npm is available check_npm() { if command -v npm &> /dev/null; then NPM_VERSION=$(npm --version) print_status "npm found: $NPM_VERSION" else print_error "npm not found. Please install npm." exit 1 fi } # Install dependencies install_dependencies() { print_info "Installing dependencies..." npm install print_status "Dependencies installed successfully" } # Build the project build_project() { print_info "Building the project..." npm run build print_status "Project built successfully" } # Test the MCP server test_server() { print_info "Testing MCP server startup..." # Start server in background and capture output timeout 10s npm run mcp > /dev/null 2>&1 & SERVER_PID=$! # Wait a moment for server to start sleep 3 # Check if server is still running if kill -0 $SERVER_PID 2>/dev/null; then print_status "MCP server started successfully" # Kill the test server kill $SERVER_PID 2>/dev/null || true else print_error "MCP server failed to start" exit 1 fi } # Get current directory get_current_dir() { CURRENT_DIR=$(pwd) print_info "Current directory: $CURRENT_DIR" } # Generate Claude Desktop configuration generate_claude_config() { get_current_dir print_info "Generating Claude Desktop configuration..." # Detect OS and set appropriate path format if [[ "$OSTYPE" == "msys" || "$OSTYPE" == "win32" ]]; then # Windows - convert path format WINDOWS_PATH=$(echo "$CURRENT_DIR" | sed 's|/c/|C:/|' | sed 's|/|\\|g') CONFIG_PATH="$WINDOWS_PATH" CONFIG_FILE_LOCATION="%APPDATA%\\Claude\\claude_desktop_config.json" elif [[ "$OSTYPE" == "darwin"* ]]; then # macOS CONFIG_PATH="$CURRENT_DIR" CONFIG_FILE_LOCATION="~/Library/Application Support/Claude/claude_desktop_config.json" else # Linux CONFIG_PATH="$CURRENT_DIR" CONFIG_FILE_LOCATION="~/.config/Claude/claude_desktop_config.json" fi # Create the configuration cat > claude_desktop_config_generated.json << EOF { "mcpServers": { "3gpp-guidance": { "command": "node", "args": ["dist/index.js"], "cwd": "$CONFIG_PATH", "description": "Expert 3GPP telecommunications guidance and research methodology" } } } EOF print_status "Generated configuration file: claude_desktop_config_generated.json" print_info "Configuration path for your system: $CONFIG_PATH" print_warning "You need to manually copy this configuration to: $CONFIG_FILE_LOCATION" } # Main setup process main() { echo "" print_info "Starting 3GPP MCP Server v2 setup process..." echo "" # Step 1: Check prerequisites print_info "Step 1: Checking prerequisites..." check_nodejs check_npm echo "" # Step 2: Install dependencies print_info "Step 2: Installing dependencies..." install_dependencies echo "" # Step 3: Build project print_info "Step 3: Building project..." build_project echo "" # Step 4: Test server print_info "Step 4: Testing server..." test_server echo "" # Step 5: Generate configuration print_info "Step 5: Generating Claude Desktop configuration..." generate_claude_config echo "" # Final instructions echo "🎉 Setup completed successfully!" echo "" echo "Next steps:" echo "1. Copy the configuration from 'claude_desktop_config_generated.json'" echo " to your Claude Desktop configuration file" echo "2. Restart Claude Desktop" echo "3. Test with a 3GPP-related question" echo "" echo "Example test query:" echo "\"Can you give me a strategic learning path for understanding 5G authentication?\"" echo "" print_status "Setup complete! 🚀" } # Run main function main

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/edhijlu/3gpp-mcp-server'

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