Connects Claude to Auvik's network monitoring platform with 25+ tools covering the full API surface. You get device inventory and details, network discovery, interface stats, configuration snapshots, alert management, and billing usage data. Works in single-tenant mode with API credentials or as a multi-tenant gateway service where auth comes through request headers. Built for MSPs and network teams who need to query Auvik data, investigate alerts, or pull performance metrics without leaving their AI workflow. Supports all eight Auvik regions and includes warranty and lifecycle tracking for hardware management.
MCP server for the Auvik network monitoring API. This server provides tools to interact with Auvik's network monitoring platform, allowing you to manage devices, networks, alerts, and more.
auvik_status - Check server status and configurationauvik_navigate - Get navigation links to Auvik UI and documentationauvik_tenants_list - List all accessible tenantsauvik_tenants_get - Get basic tenant informationauvik_tenants_detail - Get detailed tenant informationauvik_devices_list - List network devicesauvik_devices_get - Get basic device informationauvik_devices_get_details - Get detailed device informationauvik_devices_get_warranty - Get device warranty informationauvik_devices_get_lifecycle - Get device lifecycle informationauvik_networks_list - List discovered networksauvik_networks_get - Get network informationauvik_interfaces_list - List network interfacesauvik_configurations_list - List device configurationsauvik_configurations_get - Get specific configurationauvik_entities_list_notes - List entity notesauvik_entities_list_audits - List entity audit logsauvik_alerts_list - List alert history. Scope to recent alerts with filter_detectedTimeAfter/filter_detectedTimeBefore (ISO 8601); filter by filter_status/filter_severity; paginate by cursor with pageSize + pageAfter (follow the returned nextPageAfter). sort is a best-effort passthrough.auvik_alerts_get - Get specific alertauvik_alerts_dismiss - Dismiss/acknowledge alertauvik_statistics_device - Get device performance metricsauvik_statistics_interface - Get interface performance metricsauvik_statistics_service - Get service performance metricsauvik_statistics_snmp_poller - Get SNMP poller metricsauvik_billing_client_usage - Get client billing usageauvik_billing_device_usage - Get device billing usageauvik_raw_request - Make a raw request to any Auvik endpoint (method GET/POST, path, optional query/body). Returns the unmodified JSON:API response. For endpoints or params the typed tools don't expose.AUVIK_USERNAME=your_auvik_username
AUVIK_API_KEY=your_auvik_api_key
AUVIK_REGION=us1 # Optional: us1, us2, us3, us4, us5, us6, lnx, eu1, eu2, au1, ca1
Credentials are provided via request headers:
x-auvik-usernamex-auvik-api-keyx-auvik-region (optional)# Pull from GitHub Container Registry
docker pull ghcr.io/wyre-technology/auvik-mcp:latest
# Run with environment variables
docker run -d \
-p 8080:8080 \
-e AUVIK_USERNAME=your_username \
-e AUVIK_API_KEY=your_api_key \
-e AUVIK_REGION=us1 \
ghcr.io/wyre-technology/auvik-mcp:latest
version: '3.8'
services:
auvik-mcp:
image: ghcr.io/wyre-technology/auvik-mcp:latest
ports:
- "8080:8080"
environment:
- AUVIK_USERNAME=your_username
- AUVIK_API_KEY=your_api_key
- AUVIK_REGION=us1
git clone https://github.com/wyre-technology/auvik-mcp.git
cd auvik-mcp
npm install
npm run build
# Run with stdio transport
npm start
# Run with HTTP transport
npm run start:http
The server is designed to work with WYRE's MCP Gateway. The gateway handles authentication and routing:
// Gateway automatically injects credentials via headers
const response = await fetch('http://gateway:8080/mcp', {
method: 'POST',
headers: {
'x-auvik-username': 'your_username',
'x-auvik-api-key': 'your_api_key',
'x-auvik-region': 'us1',
'content-type': 'application/json',
},
body: JSON.stringify({
jsonrpc: '2.0',
id: 1,
method: 'tools/call',
params: {
name: 'auvik_devices_list',
arguments: {}
}
})
});
echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"auvik_status","arguments":{}}}' | npm start
Auvik operates in multiple regions. Set the appropriate region:
us1 - US East (default)us2 - US Westus3 - US Centralus4 - US Southus5 - United States (newer cluster)us6 - US East (Ohio)lnx - US East (Ohio)eu1 - Europe Westeu2 - Europe Centralau1 - Australiaca1 - CanadaThe server implements comprehensive error handling:
isError: trueThe server exposes a health endpoint at /health that always returns 200 OK. This endpoint does not require authentication and is suitable for container health checks.
# Install dependencies
npm install
# Run in development mode with file watching
npm run dev
# Run tests
npm test
# Type checking
npm run typecheck
# Lint
npm run lint
# Build
npm run build
See CONTRIBUTING.md for contribution guidelines.
Licensed under the Apache License 2.0. See LICENSE for details.
AUVIK_USERNAME*Auvik username (email) used as HTTP Basic auth user
AUVIK_API_KEY*secretAuvik API key (generated in the Auvik portal under Integrations -> APIs)
AUVIK_REGIONAuvik regional API host (us1, us2, us3, us4, eu1, eu2, au1, ca1). Omit to auto-detect via /authentication/verify probe.
MCP_TRANSPORTdefault: stdioTransport mode for the server. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.
AUTH_MODEdefault: envCredential source: 'env' reads vars locally, 'gateway' expects header injection from the WYRE MCP Gateway.
LOG_LEVELdefault: infoLog verbosity: debug, info, warn, error
io.github.shelvick/shopify-subscription-reconciliation
zleventer/google-ads-mcp
csoai-org/meok-stripe-acp-checkout-mcp
io.github.mharnett/google-ads
csoai-org/stripe-billing-mcp
co.pipeboard/google-ads-mcp