netwhisper-mcp-server

netwhisper-mcp-server

0

Netwhisper Remote MCP Server is designed to facilitate remote management of network devices using Cloudflare Workers. It offers secure communications via OAuth and integrates with other MCP tools for seamless operation.

Netwhisper Remote MCP Server

A remote MCP server to facilitate interactions with network devices.

Overview

Netwhisper Remote MCP Server is a Cloudflare Workers-based implementation of a Model Context Protocol (MCP) server. It provides tools to interact with network devices, retrieve configuration details, and manage device settings remotely. The server supports OAuth-based authentication and integrates seamlessly with tools like the MCP Inspector and Claude Desktop.

Features

  • MCP Tools: Includes tools like get_facts, get_config, and add_static_route to interact with network devices.
  • OAuth Authentication: Secure access to the server using OAuth.
  • Cloudflare Workers: Deployed on Cloudflare Workers for scalability and performance.
  • KV Storage: Uses Cloudflare KV for storing OAuth-related data.
  • Durable Objects: Implements Durable Objects for stateful interactions.

Local Development

To develop and test the server locally:

  1. Clone the repository:

    git clone git@github.com:pmesgari/netwhisper-mcp-server.git
    cd netwhisper-mcp-server
    
  2. Install dependencies:

    npm install
    
  3. Run the server locally:

    npm start
    
  4. Open the server in your browser: http://localhost:8787/

Using the MCP Inspector

To explore the MCP API, use the MCP Inspector:

  1. Start the inspector:

    npx @modelcontextprotocol/inspector
    
  2. Configure the inspector:

    • Set the Transport Type to SSE.
    • Enter http://localhost:8787/sse as the URL.
    • Click "Connect".
  3. Log in using any email and password to access the tools.

Connecting to Claude Desktop

To connect the server to Claude Desktop:

  1. Update the Claude configuration file:

     {
       "mcpServers": {
         "netwhisper": {
           "command": "npx",
           "args": [
             "mcp-remote",
             "http://localhost:8787/sse"
           ]
         }
       }
     }
    
  2. Restart Claude Desktop and verify the tools are available.

Deployment to Cloudflare

To deploy the server to Cloudflare Workers:

  1. Create a KV namespace:

    npx wrangler@latest kv namespace create remote-mcp-server-oauth-kv
    
  2. Add the KV namespace ID to wrangler.jsonc.

  3. Deploy the server:

    npm run deploy
    
  4. Access the deployed server at your workers.dev URL.

Debugging

  • Restart Claude or clear the ~/.mcp-auth directory if issues arise:

    rm -rf ~/.mcp-auth
    
  • Test the server using the MCP Inspector:

    npx mcp-remote http://localhost:8787/sse
    

License

This project is licensed under the MIT License. See the LICENSE file for details.