Sponsored by Deepsite.site

WiFi MCP Server

Created By
krish27187 months ago
MCP server demo for Wi-Fi queries on Linux distros
Content

WiFi MCP Server

A Model Context Protocol (MCP) server that provides WiFi network monitoring and management tools. This server can be integrated with Continue.dev, Claude Desktop, or any MCP-compatible client to give AI assistants real-time access to WiFi information.

Features

  • 📡 WiFi Network Scanning: Discover available wireless networks
  • 📊 Connection Status: Get current WiFi connection details
  • 📶 Signal Strength: Monitor signal quality and strength metrics
  • 🔌 Interface Management: List and manage network interfaces
  • 🔄 Real-time Updates: Live monitoring of network conditions

Prerequisites

  • Python 3.8 or higher
  • Linux system with WiFi capabilities
  • Network management tools: iw, iwconfig, ip (usually pre-installed)
  • Root/sudo access for some network operations

Installation

Quick Setup

# Clone or navigate to the project directory
cd ~/wifi-mcp-server

# Install dependencies
pip install -r requirements.txt

# Optional: Install in development mode
pip install -e .

Alternative Setup with Virtual Environment

# Create virtual environment
python3 -m venv venv
source venv/bin/activate

# Install dependencies
pip install -r requirements.txt

Running the Demo

1. Standalone Testing

Test the WiFi tools without MCP integration:

# Run standalone tests
python3 standalone_test.py

# Or use the Makefile
make test-standalone

2. MCP Server Testing

Test the full MCP server functionality:

# Test all MCP tools
python3 test_wifi_server.py ./wifi_mcp_server.py

# Or use the Makefile
make test-mcp

3. Running the MCP Server

Start the server in stdio mode (for integration with MCP clients):

# Run the server directly
python3 wifi_mcp_server.py

# Or using the provided script
./run_server.sh

Integration Examples

VS Code MCP Integration

To integrate the WiFi MCP Server with Visual Studio Code, add the following to your VS Code settings (~/.config/Code/User/settings.json):

{
    "mcp": {
        "servers": {
            "wifi-mcp-server": {
                "type": "stdio",
                "command": "~/wifi-mcp-server/wifi_mcp_server.py",
                "args": []
            }
        }
    }
}

This enables MCP-based WiFi tools directly within VS Code.

Available Tools

1. scan_wifi

Scan for available WiFi networks

Parameters:

  • interface (optional): WiFi interface name (e.g., "wlan0")

Example usage:

# In Continue.dev chat:
"Scan for available WiFi networks"

2. get_wifi_status

Get current WiFi connection status

Parameters:

  • interface (optional): WiFi interface name

Example usage:

# In Continue.dev chat:
"What's my current WiFi status?"

3. get_signal_strength

Get detailed signal strength and quality metrics

Parameters:

  • interface (optional): WiFi interface name

Example usage:

# In Continue.dev chat:
"Check my WiFi signal strength"

4. list_interfaces

List all available network interfaces

Example usage:

# In Continue.dev chat:
"Show me all network interfaces"

Demo Scenarios

Basic Network Monitoring

  1. Check Current Status:

    "What's my current WiFi status?"
    
  2. Scan for Networks:

    "Scan and list available WiFi networks"
    
  3. Monitor Signal Quality:

    "How strong is my WiFi signal?"
    

Troubleshooting Workflow

  1. Network Diagnostics:

    "Help me diagnose my WiFi connection issues"
    
  2. Compare Networks:

    "Show me all available networks and their signal strengths"
    
  3. Interface Information:

    "List all my network interfaces and their status"
    

Development

Project Structure

wifi-mcp-server/
├── wifi_mcp_server.py          # Main MCP server implementation
├── test_wifi_server.py         # MCP server test suite
├── standalone_test.py          # Standalone functionality tests
├── requirements.txt            # Python dependencies
├── setup.py                    # Package setup configuration
├── Makefile                    # Build and test commands
└── README.md                   # This file

Running Tests

# Run all tests
make test

# Run specific test suites
make test-standalone  # Test WiFi functions directly
make test-mcp        # Test MCP server functionality

# Run with verbose output
python3 test_wifi_server.py ./wifi_mcp_server.py

Development Setup

# Set up development environment
make dev-setup

# Install in development mode
make install

# Format code
make lint

Troubleshooting

Common Issues

  1. Permission Errors:

    # Some WiFi operations require sudo
    sudo python3 wifi_mcp_server.py
    
  2. Missing Dependencies:

    pip install mcp
    
  3. Network Tools Not Found:

    # Install wireless tools (Ubuntu/Debian)
    sudo apt install wireless-tools iw net-tools
    
    # Install wireless tools (CentOS/RHEL)
    sudo yum install wireless-tools iw net-tools
    
  4. MCP Server Not Starting:

    # Check if MCP library is installed
    python3 -c "import mcp; print('MCP installed successfully')"
    
    # Run server with debug output
    python3 wifi_mcp_server.py 2>&1 | tee debug.log
    

Debug Mode

Enable debug logging by setting environment variable:

export DEBUG=1
python3 wifi_mcp_server.py

Checking Integration

  1. Test MCP Server Directly:

    echo '{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}' | python3 wifi_mcp_server.py
    
  2. Verify Continue.dev Integration:

    • Check Continue.dev logs: ~/.continue/logs/continue.log
    • Look for MCP server loading messages
    • Test with simple WiFi queries
  3. Check Network Interface:

    # List wireless interfaces
    iw dev
    
    # Check interface status
    ip link show
    

License

This project is licensed under the terms specified in the LICENSE file.

Examples Output

WiFi Status Example

{
    "interface": "wlan0",
    "connected_ssid": "ExampleSSID",
    "access_point": "00:11:22:33:44:55",
    "bit_rate": 300.0,
    "link_quality": {
        "current": 40,
        "max": 70
    },
    "signal_level": -60
}

Network Scan Example

{
    "interface": "wlan0",
    "networks": [
        {
            "bssid": "00:11:22:33:44:55",
            "frequency": 5180.0,
            "signal": -60,
            "ssid": "ExampleSSID"
        },
        {
            "bssid": "66:77:88:99:AA:BB",
            "frequency": 2412.0,
            "signal": -50,
            "ssid": "GuestNetwork"
        }
    ],
    "scan_time": 1234567.890123
}

Quick Start Demo

1. Setup and Installation

# Clone or navigate to the project directory
cd ~/wifi-mcp-server

# Option A: Quick setup (system Python)
pip install -r requirements.txt

# Option B: Development setup with virtual environment
make dev-setup
source venv/bin/activate  # Activate the virtual environment

2. Test WiFi Functions

# Test standalone WiFi functions (no MCP required)
python3 standalone_test.py

# Expected output: Lists interfaces, shows WiFi status, etc.

3. Test MCP Server

# Test the full MCP server with all tools
python3 test_wifi_server.py ./wifi_mcp_server.py

# Expected output: JSON responses for scan, status, signal strength

4. Run the MCP Server

# Start the server in stdio mode
python3 wifi_mcp_server.py

# The server will wait for JSON-RPC commands via stdin
# Press Ctrl+C to stop

5. Integration with VS Code

Add the following to your VS Code settings (~/.config/Code/User/settings.json):

{
    "mcp": {
        "servers": {
            "wifi-mcp-server": {
                "type": "stdio",
                "command": "~/wifi-mcp-server/wifi_mcp_server.py",
                "args": []
            }
        }
    }
}

6. Running the agent locally

# Start the MCP server in HTTP mode
nohup python3 wifi_mcp_server.py --mode http &
python3 ./wifi_agent.py --llm-url http://localhost:8000 -model llama3.1:8b --wifi-server-url http://localhost:8080

Note: For running Ollama with Intel GPU acceleration, I used the mattcurf/ollama-intel-gpu Docker service. This enables efficient LLM inference on Intel hardware.

6. Demo Commands

Once integrated, try these commands in the VS Code chat:

"What's my current WiFi status?"
"Scan for available WiFi networks"
"Check my WiFi signal strength"
"List all network interfaces"
Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
Amap Maps高德地图官方 MCP Server
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
Context7Context7 MCP Server -- Up-to-date code documentation for LLMs and AI code editors
Playwright McpPlaywright MCP server
CursorThe AI Code Editor
DeepChatYour AI Partner on Desktop
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
WindsurfThe new purpose-built IDE to harness magic
Tavily Mcp
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
ChatWiseThe second fastest AI chatbot™
TimeA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.
Serper MCP ServerA Serper MCP Server
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.