Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
REMNAWAVE_API_KEYNoДоп. ключ для панели за Caddy с кастомным путём — уходит в X-Api-Key
REMNAWAVE_BASE_URLYesURL панели, например https://vpn.example.com
REMNAWAVE_READONLYNotrue отключает все пишущие инструменты (190 → 87)
REMNAWAVE_API_TOKENYesAPI-токен из настроек панели

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
users_listB

List all Remnawave VPN users with pagination

users_getA

Get a specific Remnawave user by their numeric ID (API 3.x: uuid is gone, id is the primary key)

users_get_by_usernameC

Get a Remnawave user by their username

users_get_by_short_uuidB

Get a Remnawave user by their short UUID

users_get_by_telegram_idA

Find Remnawave users by their Telegram ID (via the users stream filter)

users_get_by_emailA

Find Remnawave users by their email (via the users stream filter)

users_get_by_tagB

Find Remnawave users by tag (via the users stream filter)

users_streamB

Stream users with cursor pagination and filters (status, traffic strategy, telegramId, email, tag, external squad)

users_accessible_nodesB

Get nodes accessible to a specific user

users_subscription_request_historyB

Get subscription request history for a specific user

users_tags_listB

List all user tags

users_resolveA

Resolve a single user by numeric ID, short UUID, or username (provide exactly one)

users_createB

Create a new VPN user in Remnawave

users_updateB

Update an existing Remnawave user (identified by numeric ID)

users_deleteA

Permanently delete a Remnawave user

users_enableA

Enable a disabled Remnawave user (restore VPN access)

users_disableA

Disable a Remnawave user (block VPN access)

users_revoke_subscriptionB

Revoke subscription for a Remnawave user (generates new subscription link)

users_reset_trafficB

Reset traffic counter for a Remnawave user

users_extend_expirationA

Extend user subscription by N days (expired users become ACTIVE with +N days from now; active users get +N days added)

users_bulk_delete_by_statusB

Bulk delete users by status

users_bulk_updateB

Bulk update selected users (async, returns 202)

users_bulk_reset_trafficC

Bulk reset traffic for selected users

users_bulk_revoke_subscriptionB

Bulk revoke subscriptions for selected users

users_bulk_deleteB

Bulk delete selected users

users_bulk_update_squadsC

Bulk update internal squad assignments for selected users

users_bulk_extend_expirationC

Bulk extend expiration date for selected users

users_bulk_all_updateB

Update ALL users at once (async, returns 202)

users_bulk_all_reset_trafficB

Reset traffic counters for ALL users

users_bulk_all_extend_expirationB

Extend expiration date for ALL users

nodes_listB

List all Remnawave nodes

nodes_getC

Get a specific node by UUID

nodes_tags_listA

List all node tags

nodes_createB

Create a new node in Remnawave

nodes_updateC

Update an existing node

nodes_deleteB

Delete a node from Remnawave

nodes_enableC

Enable a disabled node

nodes_disableC

Disable a node

nodes_restartB

Restart a specific node

nodes_restart_allB

Restart all nodes

nodes_reset_trafficC

Reset traffic counter for a node

nodes_reorderC

Reorder nodes by providing each node UUID with its new position

nodes_bulk_profile_modificationB

Bulk modify config profile for selected nodes

nodes_bulk_actionsC

Bulk actions on selected nodes (enable/disable/restart)

nodes_bulk_updateC

Bulk update properties for selected nodes

hosts_listB

List all Remnawave hosts

hosts_getC

Get a specific host by UUID

hosts_tags_listA

List all host tags

hosts_createB

Create a new host in Remnawave

hosts_updateC

Update an existing host

hosts_deleteC

Delete a host from Remnawave

hosts_bulk_enableC

Bulk enable selected hosts

hosts_bulk_disableC

Bulk disable selected hosts

hosts_bulk_deleteA

Bulk delete selected hosts

hosts_bulk_updateB

Bulk update fields on selected hosts (replaces the removed set-inbound / set-port endpoints)

hosts_reorderB

Reorder hosts by providing each host UUID with its new position

system_statsB

Get overall Remnawave panel statistics (users, nodes, traffic, memory, CPU)

system_bandwidth_statsC

Get bandwidth statistics

bandwidth_stats_users_by_nodesB

Get top per-user bandwidth usage across the given nodes for a date range

system_nodes_metricsC

Get detailed node metrics

system_nodes_statisticsC

Get node statistics

system_healthB

Check Remnawave panel health status

system_metadataB

Get Remnawave panel metadata and version information

system_configurationB

Get Remnawave panel configuration

system_stats_digestB

Get system statistics digest for a date-time range

system_stats_httpB

Get HTTP request statistics

system_generate_x25519B

Generate X25519 key pair for VLESS Reality

auth_statusB

Check current authentication status with Remnawave panel

system_stats_recapC

Get system statistics recap

system_srr_matcherC

Test subscription request routing rules

subscriptions_listC

List all subscriptions with pagination

subscriptions_get_by_idC

Get subscription details by user numeric ID

subscriptions_get_by_usernameC

Get subscription details by username

subscriptions_get_by_short_uuidC

Get subscription details by short UUID

subscription_infoC

Get subscription info by short UUID (public endpoint)

subscriptions_get_raw_by_short_uuidC

Get raw subscription config by short UUID

subscriptions_get_subpage_configD

Get subscription page configuration

subscriptions_get_connection_keysB

Get connection keys for a user subscription

subscription_request_history_listB

List subscription request history

subscription_request_history_statsB

Get subscription request history statistics

config_profiles_listB

List all config profiles

config_profiles_getB

Get a config profile by UUID

inbounds_listB

List all inbounds from all config profiles

config_profiles_get_inboundsC

Get inbounds for a specific config profile

config_profiles_get_computed_configC

Get computed configuration for a config profile

config_profiles_createC

Create a new config profile

config_profiles_updateC

Update a config profile

config_profiles_deleteC

Delete a config profile

config_profiles_reorderB

Reorder config profiles by providing each profile UUID with its new position

squads_listB

List all internal squads

squads_getA

Get a specific internal squad by UUID

squads_accessible_nodesB

Get nodes accessible to a specific squad

squads_createC

Create a new internal squad

squads_updateC

Update an internal squad

squads_deleteB

Delete an internal squad

squads_add_usersA

Add specific users to an internal squad (1-1000 per call, async 202)

squads_remove_usersA

Remove specific users from an internal squad (1-1000 per call, async 202)

squads_add_all_usersA

Add ALL users to an internal squad (async 202)

squads_remove_all_usersA

Remove ALL users from an internal squad (async 202)

squads_reorderA

Reorder internal squads by providing each squad UUID with its new position

hwid_devices_listA

List HWID devices for a specific user

hwid_devices_list_allA

List all HWID devices across all users

hwid_statsB

Get HWID device statistics

hwid_top_usersA

Get users with most HWID devices

hwid_device_createB

Create a HWID device entry for a user

hwid_device_deleteB

Delete a specific HWID device (identified by user ID + hardware ID)

hwid_devices_delete_allC

Delete all HWID devices for a user

api_tokens_listA

List all API tokens

api_tokens_scopes_listA

List all valid API token scopes

api_tokens_createB

Create a new API token (API 3.x: tokens are scoped)

api_tokens_deleteB

Delete an API token

keygen_getB

Generate a new SECRET_KEY for node configuration

billing_providers_listA

List all infrastructure billing providers

billing_provider_getA

Get a billing provider by UUID

billing_nodes_listB

List all billing nodes

billing_history_listC

List billing history

billing_provider_createA

Create a new billing provider

billing_provider_updateC

Update a billing provider

billing_provider_deleteC

Delete a billing provider

billing_node_createC

Create a billing node

billing_node_updateC

Update a billing node

billing_node_deleteC

Delete a billing node

billing_history_createC

Create a billing history entry

billing_history_deleteB

Delete a billing history entry

snippets_listA

List all configuration snippets

snippets_createC

Create a new configuration snippet

snippets_updateB

Update an existing snippet (identified by name)

snippets_deleteC

Delete a snippet by name

snippets_syncA

Sync a snippet to the config profiles using it (async, 202)

external_squads_listB

List all external squads

external_squads_getC

Get an external squad by UUID

external_squads_createB

Create a new external squad

external_squads_updateC

Update an external squad

external_squads_deleteB

Delete an external squad

external_squads_add_all_usersB

Add ALL users to an external squad (async 202)

external_squads_remove_all_usersA

Remove ALL users from an external squad (async 202)

external_squads_reorderC

Reorder external squads

settings_getA

Get Remnawave panel settings

settings_updateC

Update Remnawave panel settings

sub_page_configs_listA

List all subscription page configurations

sub_page_configs_getB

Get a subscription page config by UUID

sub_page_configs_createB

Create a subscription page configuration

sub_page_configs_updateC

Update a subscription page configuration

sub_page_configs_deleteB

Delete a subscription page configuration

sub_page_configs_reorderC

Reorder subscription page configurations

sub_page_configs_cloneC

Clone a subscription page configuration

node_plugins_listA

List all node plugins

node_plugins_getA

Get a node plugin by UUID

node_plugins_torrent_reportsB

Get torrent blocker reports

node_plugins_torrent_statsC

Get torrent blocker statistics

shared_lists_listB

List all node plugin shared lists

shared_lists_getA

Get a node plugin shared list by name

node_plugins_createC

Create a new node plugin

node_plugins_updateC

Update a node plugin

node_plugins_deleteC

Delete a node plugin

node_plugins_reorderC

Reorder node plugins

node_plugins_cloneC

Clone a node plugin

node_plugins_executeC

Execute a node plugin

node_plugins_torrent_truncateB

Truncate all torrent blocker reports

node_plugins_syncC

Sync a node plugin to its nodes (async, 202)

shared_lists_createC

Create a node plugin shared list

shared_lists_updateB

Update a node plugin shared list (identified by name)

shared_lists_deleteA

Delete a node plugin shared list by name

shared_lists_syncA

Sync a shared list to its nodes (async, 202)

connections_fetch_by_userA

Fetch active connections for a user (async job, returns jobId)

connections_get_user_resultC

Get result of a user connections fetch job

connections_fetch_by_nodeA

Fetch connections for all users on a node (async job, returns jobId)

connections_get_node_resultC

Get result of a node connections fetch job

connections_geocheckB

Run a geolocation check from a node (async job; requires node 3.3.0+)

connections_get_geocheck_resultB

Get result of a geocheck job

connections_dropA

Drop active connections by user IDs or IP addresses on all or specific nodes (async, 202)

node_integrations_listB

List all node integrations

node_integrations_getC

Get a node integration by UUID

node_integrations_createC

Create a node integration

node_integrations_updateC

Update a node integration

node_integrations_deleteB

Delete a node integration

tags_listA

List all tags used in a domain (config profiles, internal/external squads, node plugins, subscription page configs, subscription templates)

tags_assignA

Replace the tags of one entity in a domain (config profiles, internal/external squads, node plugins, subscription page configs, subscription templates)

metadata_node_getB

Get metadata for a specific node

metadata_user_getC

Get metadata for a specific user

metadata_node_upsertB

Create or update metadata for a node

metadata_user_upsertB

Create or update metadata for a user

subscription_settings_getB

Get Remnawave subscription settings

subscription_settings_updateB

Update Remnawave subscription settings (API 3.x: profile title/support link/update interval/HAPP fields moved to custom response headers)

subscription_templates_listB

List all subscription templates

subscription_templates_getB

Get a subscription template by UUID

subscription_templates_createB

Create a new subscription template

subscription_templates_updateB

Update an existing subscription template

subscription_templates_deleteB

Delete a subscription template

subscription_templates_reorderA

Reorder subscription templates by providing each template UUID with its new position

Prompts

Interactive templates invoked by user choice

NameDescription
create_user_wizardStep-by-step guide to create a new VPN user
node_diagnosticsDiagnose issues with a specific node
traffic_reportGenerate a traffic usage report
user_auditComplete audit of a specific user
bulk_user_cleanupFind and manage expired or inactive users

Resources

Contextual data attached and managed by the client

NameDescription
panel-statsCurrent Remnawave panel statistics (users, nodes, traffic, system)
panel-nodesStatus of all Remnawave nodes (online/offline, traffic)
panel-healthRemnawave panel health check

TDQS

C2.5/5.0

Scored across 190 tools

Disambiguation1/5

Numerous tools have overlapping purposes, such as multiple lookup methods for users (users_get, users_get_by_username, users_get_by_short_uuid, users_get_by_telegram_id, users_get_by_email, users_stream, users_resolve) and several bulk operation tools that vary only slightly. This makes it difficult for an agent to select the correct tool, leading to frequent misselection.

Naming Consistency4/5

The naming pattern is largely consistent, using a resource_action convention (e.g., users_list, nodes_create, hosts_delete). Most tools follow this pattern, though there are minor deviations such as 'subscription_info' vs 'subscriptions_get_by_id' and 'keygen_get' which uses 'get' for generation. Overall, the pattern is predictable.

Tool Count1/5

With 190 tools, this is far beyond any reasonable scope for a single MCP server. The calibration indicates that 50+ tools are extreme, and this server has nearly four times that amount. The tool surface is overwhelming and would likely cause confusion and inefficiency for agents.

Completeness4/5

The tool set covers all major resources (users, nodes, hosts, squads, subscriptions, billing, config profiles, plugins, etc.) with full CRUD operations and lifecycle management. There are no obvious missing operations for the domain; the massive number of tools suggests thorough coverage. Minor gaps may exist (e.g., password management), but overall the surface is complete.

Maintenance

ActivityMaintained
ResponsivenessNo issues