local-mcp-server

mpklu/local-mcp-server

3.2

If you are the rightful owner of local-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A universal Model Context Protocol (MCP) server that automatically discovers and exposes local scripts to AI assistants through a modern web interface.

Tools
5
Resources
0
Prompts
0

Local MCP Server

A universal Model Context Protocol (MCP) server that automatically discovers and exposes local tools to AI assistants through a modern web interface and pluggable host adapter system.

🌟 Features

  • Directory-Based Auto-Discovery: Automatically detects tools organized in individual folders under tools/
  • Universal Host Support: Works with Claude Desktop, Generic MCP clients, and Google Gemini CLI through pluggable adapters
  • Intelligent Discovery Pipeline: Auto-generates configurations for new tools with dual-config system
  • Visual Management: Modern React-based web interface for tool configuration and monitoring
  • Host Adapter Architecture: Pluggable system supporting different MCP communication protocols
  • Dependency Isolation: Each tool gets its own virtual environment with automatic dependency management
  • Secure Execution: Sandboxed script execution with timeout protection and structured result handling
  • Real-time Monitoring: Live server status, execution monitoring, and configuration management

šŸš€ Quick Start

Prerequisites

Installation

  1. Clone the repository

    git clone https://github.com/yourusername/local-mcp-server.git
    cd local-mcp-server
    
  2. Start the development environment

    # This will set up both server and web interface
    ./scripts/setup.sh
    
  3. Add your first tool

    • Create a folder in tools/ with your tool name (e.g., tools/my-tool/)
    • Add your script as run.py, run.sh, or run (entry point)
    • Run python server/discover_tools.py to auto-generate configuration
    • Open http://localhost:3000 to configure it via the web interface
    • The tool will automatically appear in your MCP-compatible AI assistant

Configure with Your MCP Host

Claude Desktop (Default)
{
  "mcpServers": {
    "local-tools": {
      "command": "/path/to/local-mcp-server/server/start_server.sh",
      "args": ["--host=claude-desktop"],
      "cwd": "/path/to/local-mcp-server/server"
    }
  }
}
Generic MCP Client
# Start server for any MCP-compatible client
./server/start_server.sh --host=generic
Google Gemini CLI
# Start server for Google Gemini CLI
./server/start_server.sh --host=google-gemini-cli

See for detailed configuration instructions and supported features.

šŸ“ Project Structure

local-mcp-server/
ā”œā”€ā”€ server/                    # MCP server core
│   ā”œā”€ā”€ src/local_mcp/        # Main server code
│   │   ā”œā”€ā”€ adapters/         # Host adapter system
│   │   ā”œā”€ā”€ config.py         # Configuration management
│   │   ā”œā”€ā”€ discovery.py      # Tool discovery system
│   │   └── server.py         # Main MCP server
│   ā”œā”€ā”€ config/               # Server configurations
│   │   ā”œā”€ā”€ tools/            # Individual tool configs
│   │   ā”œā”€ā”€ tools.json        # Compiled tool config
│   │   └── config_templates/ # Host-specific templates
│   ā”œā”€ā”€ discover_tools.py     # Discovery tool utility
│   ā”œā”€ā”€ build_tools.py        # Config compilation utility
│   └── start_server.sh       # Server startup script
ā”œā”€ā”€ web-interface/            # Web management interface
│   ā”œā”€ā”€ backend/              # FastAPI backend
│   ā”œā”€ā”€ frontend/             # React frontend
│   └── start_dev.sh          # Development server
ā”œā”€ā”€ tools/                    # Directory-based tools (each in own folder)
│   ā”œā”€ā”€ demo-features/        # Sample: Advanced features showcase
│   ā”œā”€ā”€ file-ops/             # Sample: File operations
│   ā”œā”€ā”€ http-client/          # Sample: HTTP utilities
│   ā”œā”€ā”€ system-info/          # Sample: System information
│   └── text-utils/           # Sample: Text processing
ā”œā”€ā”€ docs/                     # Documentation
└── examples/                 # Host-specific configuration examples

šŸ› ļø Sample Tools

The project includes several sample tools to help you get started:

  • System Info: Get system information and metrics
  • File Operations: File reading, writing, and listing utilities
  • Text Processing: Text manipulation and analysis tools
  • HTTP Client: Make HTTP requests and API calls
  • Demo Features: Showcase advanced configuration features

šŸ“š Documentation

šŸ¤ Contributing

We welcome contributions! Please see our for details.

šŸ“„ License

This project is licensed under the MIT License - see the file for details.

šŸ†˜ Support