wg-easy
Rank #7,522io.github.ni-c/wg-easy-mcp
Administer wg-easy (WireGuard Easy) v15: manage VPN clients, configs, QR codes and server status
wg-easy is a Model Context Protocol (MCP) server published by ni-c. It ranks #7,522 of 115,460 servers tracked on MCP Toplist. wg-easy is listed across 2 registries — Official MCP and Glama, with 5 tracked versions. It was first listed on Aug 5, 2026 and most recently updated on Aug 26, 2026.
Ranks ahead of 107,938 of 115,460 servers on MCP Toplist.
Use wg-easy
Requires user-supplied configuration before first use — typically an API key, token or connection string set via environment variables.
claude mcp add wg-easy-mcp -e "WG_EASY_URL=<your WG_EASY_URL>" -e "WG_EASY_USERNAME=<your WG_EASY_USERNAME>" -e "WG_EASY_PASSWORD=<your WG_EASY_PASSWORD>" -e "WG_EASY_INSECURE_TLS=<your WG_EASY_INSECURE_TLS>" -e "WG_EASY_READ_ONLY=<your WG_EASY_READ_ONLY>" -e "WG_EASY_ALLOW_TOOLS=<your WG_EASY_ALLOW_TOOLS>" -e "WG_EASY_DENY_TOOLS=<your WG_EASY_DENY_TOOLS>" -- npx -y wg-easy-mcpReplace each placeholder with your own value before saving.
claude mcp add wg-easy-mcp -e "WG_EASY_URL=<your WG_EASY_URL>" -e "WG_EASY_USERNAME=<your WG_EASY_USERNAME>" -e "WG_EASY_PASSWORD=<your WG_EASY_PASSWORD>" -e "WG_EASY_INSECURE_TLS=<your WG_EASY_INSECURE_TLS>" -e "WG_EASY_READ_ONLY=<your WG_EASY_READ_ONLY>" -e "WG_EASY_ALLOW_TOOLS=<your WG_EASY_ALLOW_TOOLS>" -e "WG_EASY_DENY_TOOLS=<your WG_EASY_DENY_TOOLS>" -- docker run -i --rm ghcr.io/ni-c/wg-easy-mcp:0.4.0Replace each placeholder with your own value before saving.
[mcp_servers.wg-easy-mcp]
command = "npx"
args = ["-y", "wg-easy-mcp"]
[mcp_servers.wg-easy-mcp.env]
WG_EASY_URL = "<your WG_EASY_URL>"
WG_EASY_USERNAME = "<your WG_EASY_USERNAME>"
WG_EASY_PASSWORD = "<your WG_EASY_PASSWORD>"
WG_EASY_INSECURE_TLS = "<your WG_EASY_INSECURE_TLS>"
WG_EASY_READ_ONLY = "<your WG_EASY_READ_ONLY>"
WG_EASY_ALLOW_TOOLS = "<your WG_EASY_ALLOW_TOOLS>"
WG_EASY_DENY_TOOLS = "<your WG_EASY_DENY_TOOLS>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
[mcp_servers.wg-easy-mcp]
command = "docker"
args = ["run", "-i", "--rm", "ghcr.io/ni-c/wg-easy-mcp:0.4.0"]
[mcp_servers.wg-easy-mcp.env]
WG_EASY_URL = "<your WG_EASY_URL>"
WG_EASY_USERNAME = "<your WG_EASY_USERNAME>"
WG_EASY_PASSWORD = "<your WG_EASY_PASSWORD>"
WG_EASY_INSECURE_TLS = "<your WG_EASY_INSECURE_TLS>"
WG_EASY_READ_ONLY = "<your WG_EASY_READ_ONLY>"
WG_EASY_ALLOW_TOOLS = "<your WG_EASY_ALLOW_TOOLS>"
WG_EASY_DENY_TOOLS = "<your WG_EASY_DENY_TOOLS>"Add to ~/.codex/config.toml. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"wg-easy-mcp": {
"command": "npx",
"args": [
"-y",
"wg-easy-mcp"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"wg-easy-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/ni-c/wg-easy-mcp:0.4.0"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Add to claude_desktop_config.json (Settings → Developer → Edit Config). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"wg-easy-mcp": {
"command": "npx",
"args": [
"-y",
"wg-easy-mcp"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"mcpServers": {
"wg-easy-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/ni-c/wg-easy-mcp:0.4.0"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (per project). Replace each placeholder with your own value before saving.
{
"servers": {
"wg-easy-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"wg-easy-mcp"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"servers": {
"wg-easy-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/ni-c/wg-easy-mcp:0.4.0"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Save as .vscode/mcp.json in your workspace. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"wg-easy-mcp": {
"command": "npx",
"args": [
"-y",
"wg-easy-mcp"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"wg-easy-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/ni-c/wg-easy-mcp:0.4.0"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json. Replace each placeholder with your own value before saving.
{
"mcpServers": {
"wg-easy-mcp": {
"command": "npx",
"args": [
"-y",
"wg-easy-mcp"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Replace each placeholder with your own value before saving.
{
"mcpServers": {
"wg-easy-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/ni-c/wg-easy-mcp:0.4.0"
],
"env": {
"WG_EASY_URL": "<your WG_EASY_URL>",
"WG_EASY_USERNAME": "<your WG_EASY_USERNAME>",
"WG_EASY_PASSWORD": "<your WG_EASY_PASSWORD>",
"WG_EASY_INSECURE_TLS": "<your WG_EASY_INSECURE_TLS>",
"WG_EASY_READ_ONLY": "<your WG_EASY_READ_ONLY>",
"WG_EASY_ALLOW_TOOLS": "<your WG_EASY_ALLOW_TOOLS>",
"WG_EASY_DENY_TOOLS": "<your WG_EASY_DENY_TOOLS>"
}
}
}
}Replace each placeholder with your own value before saving.
Show your rank
Maintain this server? Add the live rank badge to your README — it updates automatically as the leaderboard changes.
[](https://mcptoplist.com/server/io.github.ni-c%2Fwg-easy-mcp)<a href="https://mcptoplist.com/server/io.github.ni-c%2Fwg-easy-mcp"><img src="https://mcptoplist.com/badge/io.github.ni-c%2Fwg-easy-mcp.svg" alt="MCP Toplist: Top 10% of 115,460" /></a>Variants: append ?metric=score or ?metric=stars to the image URL.
Listed on 2 registries
ni-c
Other servers by ni-c
- mcp-hub#4,896 · 8 vers
- Hetzner DNS#6,094 · 7 vers
- FreshRSS#7,194 · 6 vers
- Opengist#7,951 · 5 vers
- Audiobookshelf#8,088 · 5 vers
- Linkwarden#8,722 · 4 vers
- OpenStreetMap#10,626 · 3 vers
- Calibre-Web#10,860 · 3 vers
- Mealie MCP Server#11,402 · 3 vers
- Rustpad MCP Server#11,712 · 3 vers
- ntfy#17,003 · 1 ver
- IMAP mailbox#17,902 · 1 ver
Available versions (5)
| Version | Published |
|---|---|
| 0.4.0 | Aug 26, 2026 |
| 0.3.3 | Aug 25, 2026 |
| 0.3.1 | Aug 18, 2026 |
| 0.3.0 | Aug 16, 2026 |
| 0.2.2 | Aug 11, 2026 |
Frequently asked questions
- Who maintains wg-easy?
- wg-easy is maintained by ni-c, which publishes 17 MCP servers (59 total versions) tracked on MCP Toplist.
- Is wg-easy listed on the Official MCP Registry?
- Yes — wg-easy is listed on the Official MCP Registry, alongside Glama.
- How many versions does wg-easy have?
- MCP Toplist tracks 5 versions of wg-easy, most recently published on Aug 26, 2026.
- Where can I find the source code for wg-easy?
- The source code for wg-easy is hosted at github.com/ni-c/wg-easy-mcp.