mcpField
W
WiFi MCP Server

WiFi MCP Server

Local
github.com/krish2718Other2Updated 74w ago

About WiFi MCP Server

WiFi MCP Server is a Linux-focused MCP server that provides Wi-Fi monitoring and management tools. It is intended for MCP-compatible clients and exposes network scans, connection details, signal metrics, and interface information.

Key features

  1. 01Scan for available Wi-Fi networks
  2. 02Read current connection status
  3. 03Check signal quality and strength
  4. 04List network interfaces

Use cases

  1. 01Diagnose a Wi-Fi connection problem
  2. 02Compare nearby networks by signal
  3. 03Check connection and interface details

MCP support

It exposes Wi-Fi scanning, connection status, signal-strength, and interface tools to MCP clients. The server runs over stdio; the README also describes an HTTP mode for a local agent setup.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

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"

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.