Skip to main content
Glama

AgentExecMPC

by realugbun
Makefile7.36 kB
# AgentExecMPC - Easy Setup Makefile # This Makefile makes it super easy to build and run AgentExecMPC .PHONY: help build run run-sse stop clean logs shell test health status install-claude-config lint # Default target - show help help: @echo "🚀 AgentExecMPC - Easy Setup Commands" @echo "" @echo "Quick Start (choose one):" @echo " make quick-start - Build and run with SSE transport (recommended for Claude Desktop)" @echo "" @echo "Individual commands:" @echo " make build - Build the Docker container" @echo " make run - Run with STDIO transport (interactive)" @echo " make run-sse - Run with SSE transport on port 8000 (for Claude Desktop)" @echo "" @echo "Management:" @echo " make stop - Stop running containers" @echo " make logs - Show container logs" @echo " make status - Show container status" @echo " make health - Check if server is responding" @echo " make shell - Open shell in running container" @echo "" @echo "Claude Desktop:" @echo " make install-claude-config - Install Claude Desktop configuration" @echo "" @echo "Development:" @echo " make lint - Run ruff linter and formatter" @echo "" @echo "Cleanup:" @echo " make clean - Remove containers and images" @echo " make test - Test basic functionality" # Quick start targets for maximum simplicity quick-start: build run-sse @echo "✅ AgentExecMPC is now running with SSE transport!" @echo "🔗 Server URL: http://localhost:8000/sse" @echo "📖 Use 'make install-claude-config' to set up Claude Desktop integration" @echo "📊 Use 'make status' to check if it's running" @echo "🛑 Use 'make stop' to stop the server" # Build the Docker image build: @echo "🔨 Building AgentExecMPC Docker image..." docker build -t agentexecmpc . @echo "✅ Build complete!" # Run with STDIO transport (interactive) run: @echo "🚀 Starting AgentExecMPC with STDIO transport (interactive)..." @echo "ℹ️ This runs interactively. Press Ctrl+C to stop." docker run -i --rm --name agentexecmpc-stdio \ -v $(PWD)/workspace:/workspace \ agentexecmpc # Run with SSE transport (perfect for Claude Desktop) run-sse: @echo "🚀 Starting AgentExecMPC with SSE transport..." @if docker ps -q -f name=agentexecmpc-sse | grep -q .; then \ echo "⚠️ Container already running. Stopping first..."; \ docker stop agentexecmpc-sse > /dev/null 2>&1; \ docker rm agentexecmpc-sse > /dev/null 2>&1; \ fi docker run -d --name agentexecmpc-sse \ -p 8000:8000 \ -v "$(PWD)/workspace:/workspace" \ -e MCP_TRANSPORT=sse \ agentexecmpc @echo "✅ Container started! Server running on http://localhost:8000/sse" # Stop all running containers stop: @echo "🛑 Stopping AgentExecMPC containers..." @docker stop agentexecmpc-sse agentexecmpc-stdio 2>/dev/null || true @docker rm agentexecmpc-sse agentexecmpc-stdio 2>/dev/null || true @echo "✅ All containers stopped" # Show logs from running container logs: @if docker ps -q -f name=agentexecmpc-sse | grep -q .; then \ echo "📋 SSE Container logs:"; \ docker logs -f agentexecmpc-sse; \ else \ echo "❌ No AgentExecMPC containers are currently running"; \ echo "Use 'make quick-start' or 'make run-sse' to start one"; \ fi # Check container status status: @echo "📊 AgentExecMPC Container Status:" @echo "" @if docker ps -q -f name=agentexecmpc-sse | grep -q .; then \ echo "✅ SSE Container: RUNNING"; \ echo "🔗 URL: http://localhost:8000/sse"; \ elif docker ps -qa -f name=agentexecmpc-sse | grep -q .; then \ echo "❌ SSE Container: STOPPED"; \ else \ echo "⚪ SSE Container: NOT CREATED"; \ fi @echo "" # Health check health: @echo "🏥 Checking AgentExecMPC health..." @if docker ps -q -f name=agentexecmpc-sse | grep -q .; then \ if curl -s -o /dev/null -w "%{http_code}" http://localhost:8000/sse | grep -q "200"; then \ echo "✅ SSE server is healthy and responding"; \ else \ echo "❌ SSE server is not responding properly"; \ fi \ else \ echo "❌ No containers are running. Use 'make quick-start' to start one"; \ fi # Open shell in running container shell: @if docker ps -q -f name=agentexecmpc-sse | grep -q .; then \ echo "🐚 Opening shell in SSE container..."; \ docker exec -it agentexecmpc-sse /bin/bash; \ else \ echo "❌ No containers are running. Use 'make quick-start' to start one first"; \ fi # Install Claude Desktop configuration install-claude-config: @echo "🤖 Installing Claude Desktop configuration..." @echo "" @echo "This will create/update your Claude Desktop configuration file." @echo "" @# Detect OS and set config path @if [ "$$(uname)" = "Darwin" ]; then \ CONFIG_DIR="$$HOME/Library/Application Support/Claude"; \ CONFIG_FILE="$$CONFIG_DIR/claude_desktop_config.json"; \ else \ CONFIG_DIR="$$HOME/.config/claude"; \ CONFIG_FILE="$$CONFIG_DIR/claude_desktop_config.json"; \ fi; \ echo "📁 Config file location: $$CONFIG_FILE"; \ echo ""; \ mkdir -p "$$CONFIG_DIR"; \ if [ -f "$$CONFIG_FILE" ]; then \ echo "⚠️ Existing configuration found. Creating backup..."; \ cp "$$CONFIG_FILE" "$$CONFIG_FILE.backup.$$(date +%Y%m%d_%H%M%S)"; \ fi; \ echo '{ "mcpServers": { "agentexecmpc": { "command": "npx", "args": ["mcp-remote", "http://localhost:8000/sse"] } } }' > "$$CONFIG_FILE"; \ echo "✅ Configuration installed!"; \ echo ""; \ echo "Next steps:"; \ echo "1. Make sure AgentExecMPC is running: make quick-start"; \ echo "2. Restart Claude Desktop"; \ echo "3. Look for the MCP tools icon in Claude Desktop" # Lint and format code with ruff lint: @echo "🔍 Running ruff linter and formatter..." @if command -v ruff >/dev/null 2>&1; then \ echo "📝 Checking code with ruff..."; \ ruff check . && \ echo "🎨 Formatting code with ruff..."; \ ruff format . && \ echo "✅ Linting and formatting complete!"; \ else \ echo "❌ ruff not found. Installing with uv..."; \ if command -v uv >/dev/null 2>&1; then \ uv tool install ruff && \ echo "📝 Checking code with ruff..."; \ ruff check . && \ echo "🎨 Formatting code with ruff..."; \ ruff format . && \ echo "✅ Linting and formatting complete!"; \ else \ echo "❌ Neither ruff nor uv found. Please install ruff:"; \ echo " pip install ruff"; \ echo " # or"; \ echo " uv tool install ruff"; \ exit 1; \ fi \ fi # Test basic functionality test: @echo "🧪 Testing AgentExecMPC..." @if ! docker images -q agentexecmpc | grep -q .; then \ echo "❌ Docker image not found. Run 'make build' first"; \ exit 1; \ fi @echo "✅ Docker image exists" @echo "🔄 Testing container startup..." @timeout 10 docker run --rm agentexecmpc echo "Container test successful" || (echo "❌ Container test failed"; exit 1) @echo "✅ Basic functionality test passed!" # Clean up everything clean: @echo "🧹 Cleaning up AgentExecMPC..." @docker stop agentexecmpc-sse agentexecmpc-stdio 2>/dev/null || true @docker rm agentexecmpc-sse agentexecmpc-stdio 2>/dev/null || true @docker rmi agentexecmpc 2>/dev/null || true @echo "✅ Cleanup complete!" # Create workspace directory if it doesn't exist workspace: @mkdir -p workspace @echo "📁 Workspace directory created at ./workspace"

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/realugbun/AgentExecMCP'

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