NetExtender MCP Server
Provides tools to check VPN status, list profiles, connect, and disconnect via SonicWall NetExtender's nxcli.exe.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@NetExtender MCP Servercheck VPN status"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@mhdd_24/netextender-mcp
MCP server for SonicWall NetExtender on Windows. Use it from Cursor or any MCP client to check VPN status, list profiles, connect, and disconnect via nxcli.exe.
Same layout as @mhdd_24/timelog-mcp: config-driven tools, env defaults, stdio MCP server.
Full documentation: docs/WIKI.md
Tools
Tool | Purpose (timelog equivalent) |
| Check connection ( |
| List saved profiles ( |
| Connect VPN ( |
| Disconnect VPN |
Related MCP server: Palo Alto Networks MCP Server
Prerequisites
Requirement | Notes |
Windows | Uses SonicWall |
NetExtender installed | Default path: |
VPN credentials | Set in MCP |
Project layout
netextender-mcp/
src/
index.ts
env.ts
config/netextender.config.ts
interfaces/netextender.ts
services/netextenderCliService.ts
tools/
index.ts
statusTool.ts
listProfilesTool.ts
connectTool.ts
disconnectTool.ts
package.json
tsconfig.json
README.mdLocal development
cd netextender-mcp
npm install
npm run build
npm run devCopy .env.example to .env for local testing.
Configure Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"netextender": {
"command": "node",
"args": ["C:/codeBase/netextender-mcp/dist/index.js"],
"env": {
"NETEXTENDER_CLI": "C:/Program Files/SonicWall/SSL-VPN/NetExtender/nxcli.exe",
"NETEXTENDER_PROFILE": "<your-profile>",
"NETEXTENDER_SERVER": "host:port",
"NETEXTENDER_DOMAIN": "<your-domain>",
"NETEXTENDER_USERNAME": "<your-vpn-username>",
"NETEXTENDER_PASSWORD": "<your-vpn-password>",
"NETEXTENDER_ALWAYS_TRUST": "true"
}
}
}
}After publishing to npm:
"netextender": {
"command": "npx",
"args": ["-y", "@mhdd_24/netextender-mcp"],
"env": { ... }
}Restart Cursor after saving.
Environment variables
Variable | Required | Purpose |
| No* | Path to |
| No | Default connection profile name |
| No | Default |
| No | Default VPN domain |
| No | Default username |
| No | Default password |
| No |
|
* Required if NetExtender is not in the default install path.
Never commit VPN passwords. Keep them in MCP env only.
Usage in chat
Run vpn_status on the netextender MCP.
vpn_connect using profile
<your-profile>.
vpn_disconnect
list_vpn_profiles
Notes
nxcli connection listmay return current session status while connected (SonicWall CLI behavior).OTP / Duo / SAML flows may need interactive approval outside MCP.
Uses
nxclifrom NetExtender 10.3+ (not legacynecli.exe).
License
ISC
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mhdd-24/NetExtender-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server