netwhisper-mcp-server
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
, andadd_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:
-
Clone the repository:
git clone git@github.com:pmesgari/netwhisper-mcp-server.git cd netwhisper-mcp-server
-
Install dependencies:
npm install
-
Run the server locally:
npm start
-
Open the server in your browser: http://localhost:8787/
Using the MCP Inspector
To explore the MCP API, use the MCP Inspector:
-
Start the inspector:
npx @modelcontextprotocol/inspector
-
Configure the inspector:
- Set the Transport Type to
SSE
. - Enter
http://localhost:8787/sse
as the URL. - Click "Connect".
- Set the Transport Type to
-
Log in using any email and password to access the tools.
Connecting to Claude Desktop
To connect the server to Claude Desktop:
-
Update the Claude configuration file:
{ "mcpServers": { "netwhisper": { "command": "npx", "args": [ "mcp-remote", "http://localhost:8787/sse" ] } } }
-
Restart Claude Desktop and verify the tools are available.
Deployment to Cloudflare
To deploy the server to Cloudflare Workers:
-
Create a KV namespace:
npx wrangler@latest kv namespace create remote-mcp-server-oauth-kv
-
Add the KV namespace ID to
wrangler.jsonc
. -
Deploy the server:
npm run deploy
-
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.