Smart MCP Proxy - One intelligent tool that discovers the right tool for any request.
MCP clients get overwhelmed with 50+ tools. Users can't find the right tool for their task.
MagicTunnel provides one smart tool that:
- Analyzes your natural language request
- Finds the best tool automatically
- Maps parameters and executes it
- Returns the result
# Clone and build
git clone https://github.com/your-org/magictunnel.git
cd magictunnel
# Quick setup with smart discovery (Ollama + development mode)
make build-release-semantic && make pregenerate-embeddings-ollama MAGICTUNNEL_ENV=development
# Run MagicTunnel with Web Dashboard & Supervisor
./magictunnel-supervisor
# Access Web Dashboard
open http://localhost:5173/dashboard
# Test smart discovery via API
curl -X POST http://localhost:3001/v1/mcp/call \
-H "Content-Type: application/json" \
-d '{
"name": "smart_tool_discovery",
"arguments": {"request": "ping google.com"}
}'# Run standalone MCP server (no web dashboard)
./magictunnelFor the best experience with local semantic searc (Requires Ollama embedding model):
# Install Ollama (optional - for local semantic search)
curl -fsSL https://ollama.ai/install.sh | sh
ollama pull nomic-embed-text
# Build with semantic search support
make build-release-semantic
# Pre-generate embeddings for faster startup
make pregenerate-embeddings-ollama
# Run with smart discovery
make run-release-ollamaπ Complete Setup Guide - Detailed 5-minute tutorial with web dashboard and all options
Instead of knowing which specific tool to use:
// β Before: Need to know exact tool names
{"name": "network_ping", "arguments": {"host": "google.com"}}
{"name": "filesystem_read", "arguments": {"path": "/etc/hosts"}}
{"name": "database_query", "arguments": {"sql": "SELECT * FROM users"}}Just describe what you want:
// β
After: Natural language requests
{"name": "smart_tool_discovery", "arguments": {"request": "ping google.com"}}
{"name": "smart_tool_discovery", "arguments": {"request": "read the hosts file"}}
{"name": "smart_tool_discovery", "arguments": {"request": "get all users from database"}}Create magictunnel-config.yaml:
server:
host: "127.0.0.1"
port: 8080
registry:
paths: ["./capabilities"]
smart_discovery:
enabled: true
tool_selection_mode: "rule_based" # or "llm_based"MagicTunnel includes a comprehensive web dashboard for management and monitoring:
# Start with supervisor (includes web dashboard)
./target/release/magictunnel-supervisor
# Open in browser
open http://localhost:5173/dashboard- π Real-time Monitoring: System status, performance metrics, and uptime tracking
- π§ Tool Management: Browse, test, and manage all available MCP tools
- π Tool Analytics: Track tool usage patterns, execution metrics, and discovery rankings
- π Configuration Management: Edit configuration files with validation and backup
- π Live Logs: Real-time log viewer with filtering, search, and export
- π MCP Testing: Interactive JSON-RPC command testing interface
- βοΈ Service Control: Start, stop, and restart services via web interface
Create capabilities/my-tools.yaml:
tools:
- name: "ping"
description: "Test network connectivity to a host"
input_schema:
type: object
properties:
host:
type: string
description: "Hostname or IP address to ping"
routing:
type: "command"
command: "ping"
args: ["-c", "4", "{host}"]Automatically generate tools from your existing APIs:
# Generate from OpenAPI/Swagger
./target/release/openapi-generator \
--spec https://api.example.com/openapi.json \
--output capabilities/api-tools.yaml \
--base-url https://api.example.com \
--auth-type bearer --auth-token $API_TOKEN
# Generate from gRPC services
./target/release/grpc-generator \
--proto service.proto \
--output capabilities/grpc-tools.yaml \
--endpoint localhost:50051
# Generate from GraphQL schemas
./target/release/graphql-generator \
--schema schema.graphql \
--endpoint https://api.example.com/graphql \
--output capabilities/graphql-tools.yaml
# Unified CLI for all formats
./target/release/magictunnel-cli openapi --spec openapi.json --base-url https://api.example.com --output tools.yamlπ Complete API Generation Guide - Detailed CLI documentation with all options and examples
- β Smart Discovery: AI-powered tool selection with natural language interface
- π₯οΈ Web Dashboard: Real-time monitoring, tool management, and configuration
- π§ Supervisor Architecture: Process management with automatic restart and health monitoring
- β MCP Compatible: Works with Claude, GPT-4, any MCP client
- π Protocol Gateway: HTTP, SSE, WebSocket protocol translation for network MCP services
- β Easy Setup: Single binary, YAML configuration
- β Extensible: Add tools without coding
- π Quick Start - 5-minute setup guide with all options
- π₯οΈ Web Dashboard - Complete web interface guide
- π§ Supervisor System - Process management and monitoring
- π§ Smart Discovery - Intelligent tool discovery
- π Protocol Compatibility - Network MCP protocol translation
- π Full Guide - Complete documentation
- π§ Configuration - Configuration options
- π οΈ Adding Tools - How to add your own tools
- ποΈ Architecture - Technical architecture
- π API Reference - Complete API documentation
- π§ͺ Testing - Testing and validation
- π Deployment - Production deployment
- π Observability - Metrics and monitoring
- π Frontend Development - Frontend implementation roadmap
- π’ Version Management - Development workflow and versioning
MIT License - see LICENSE for details.










