Auvik MCP

io.github.ServosityPublished by GitHub account Servosityv0.2.9Updated Nov 7, 2026

Every Auvik endpoint as a command, plus the cross-client answers the Auvik UI and API cannot give

Overview

AI-generated overview

Unofficial local MCP server that gives an assistant command access to Auvik network-management data, plus cross-client reports built from a local SQLite mirror.

What you can do
  • Query Auvik endpoints as commands, covering inventory, devices, tenants, alerts, configuration backups and SaaS usage
  • Run cross-client analyses such as end-of-support buckets, billed-versus-inventory usage reconciliation, fleet diffs since a snapshot, discovery gaps and alert noise by client
  • Sync Auvik data into a local SQLite mirror with full-text search so aggregate questions are answered offline without extra API calls
  • Dismiss alerts (the only write the Auvik API supports) and export or deliver command output, including to a webhook
When to use it
Useful for MSP owners and network teams who need fleet-wide answers across many client tenants that the Auvik portal and API do not aggregate, such as end-of-life hardware, unbacked-up devices, billing mismatches or what was decommissioned.
Requirements
Runs as a local process (stdio) on desktop agents; a companion auvik-cli binary is required and is bundled in recent .mcpb releases. Needs AUVIK_USERNAME (Auvik user email) and AUVIK_API_KEY (Basic auth password), plus AUVIK_BASE_URL for the correct regional API host. Optional: AUVIK_TENANT, AUVIK_MCP_READ_ONLY, AUVIK_NO_LOCAL_DATA, AUVIK_USER_AGENT, PRINTING_PRESS_CLIENT_PROFILE, and AUVIK_MCP_HTTP_TOKEN only for HTTP transport. Network access to Auvik is required.
Before you install
Requires Auvik API credentials (AUVIK_USERNAME plus AUVIK_API_KEY); grant them the narrowest scope you can, since the server can do whatever they allow. Alert dismissal changes data in Auvik. Webhook delivery, feedback sending and HTTP transport can move client data off the machine; AUVIK_MCP_HTTP_TOKEN protects HTTP mode. A local SQLite copy of API responses is kept unless AUVIK_NO_LOCAL_DATA is set. The project is unofficial and beta, not yet verified against a production tenant.

Installation

In SourceWeft

  1. Open Auvik MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Auvik + AI - for Claude, the ChatGPT desktop app, GitHub Copilot, Gemini CLI, and any agent that speaks MCP

Unofficial. Community-built Claude Code Skill and MCP server for the Auvik API. Not affiliated with, endorsed by, or sponsored by Auvik Networks Inc..

[Auvik - MCP server and Claude Code Skill]

Full skill page - install, outcomes, safety model.

Every Auvik endpoint as a command, plus the cross-client answers the Auvik UI and API cannot give you. Works with the AI you already use - ChatGPT (desktop app), Claude Desktop, Codex, Claude Code, Claude Cowork, and GitHub Copilot - plus Gemini CLI. Free, open source, runs on your laptop. Built for MSP owners. No code required.

Works with your agent

The six agents MSP owners actually use (self-serve, works today):

Your AI agentHow to install the Auvik skill
Claude DesktopRun installer, then Settings > Extensions to register auvik-mcp (no JSON editing).
ChatGPT (desktop app)Run installer, then add auvik-mcp in Settings > MCP servers as a local (STDIO) server. ChatGPT on the web is not supported yet.
Codex CLIPaste the install prompt below.
Claude CodePaste the install prompt below.
Claude CoworkPaste the install prompt below.
GitHub Copilot (VS Code)Run installer, add auvik-mcp to mcp.json under the servers key, then pick Agent mode.

The ChatGPT desktop app runs auvik-mcp locally and shares MCP configuration with Codex (OpenAI). ChatGPT on the web needs a remote (HTTP) server, which msp-skills does not support yet (see Remote agents in mcp-install.md). If your team works there, a hosted gateway is the better pick; check that your AI app is on the gateway's setup list.

Also for the Microsoft and Google stacks

Big install base, but an honest heads-up: Gemini CLI runs the local binary you just installed, while Microsoft 365 Copilot and the Gemini app need a remote server, which msp-skills does not support yet.

AgentWhat it takes
Microsoft 365 Copilot / Copilot StudioNot supported by msp-skills yet: it needs a remote server. A hosted gateway is the better pick; check that your AI app is on the gateway's setup list.
Google GeminiGemini CLI is local - same as Claude Code. See mcp-install.md. The Gemini app needs a remote server and is not supported by msp-skills yet.

Skill-native agents (also covered): Hermes and OpenClaw read this skill's SKILL.md directly and speak MCP - see their install sections below. Also works with Cursor, Windsurf, Cline, Continue.dev, and Zed via MCP. Full per-tool wire-up: docs/which-agent.md.

Run more than one agent? Install across all 51+ supported agents in one command: npx skills add Servosity/msp-skills@latest (requires Node.js, then run the per-skill installer for the CLI/MCP binaries). See docs/which-agent.md.

Install in 60 seconds

Fastest for Claude Desktop - one-click .mcpb

Claude Desktop bundle: the .mcpb launches on macOS (Intel and Apple Silicon), Windows x64 and Linux x64. Every tool shells out to the companion auvik-cli. Releases cut from 2026-09-18 on ship that CLI inside the bundle; older bundles contain only the MCP server, so if yours lacks the companion, run the Path A or Path B installer below first (or set AUVIK_CLI_PATH to an existing binary). Details: #331.

Download Auvik MCP (.mcpb) - then open Claude Desktop > Settings > Extensions and select the file. One click, no JSON, no shell. (Browse every Auvik release on the releases page.)

Prefer the Claude Code plugin? Add the marketplace once, then install - works immediately, no directory listing required:

/plugin marketplace add Servosity/msp-skills/plugin install auvik@msp-skills

Path A - paste one prompt into your AI agent (recommended)

Copy this into Claude Code, Codex CLI, or Claude Cowork:

Install the Auvik Skill and MCP server from Servosity/msp-skills in this agent workspace. If this workspace uses a POSIX shell (macOS, Linux, WSL, or Bash), run bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/auvik/install.sh). If it uses Windows PowerShell, run iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/auvik/install.ps1 | iex. Then authenticate per the README and run auvik-cli --help to explore.

The same prompt works in any agent that can run shell.

Path B - run the installer yourself

Windows (PowerShell):

powershell
iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/auvik/install.ps1 | iex

macOS / Linux:

bash
bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/auvik/install.sh)

The installer drops both auvik-cli (the CLI) and auvik-mcp (the MCP server) into your user bin path. Claude Code, Codex, and Cowork discover the Skill via SKILL.md in this directory.

Verify:

bash
auvik-cli --version

Upgrade to the latest version

The installer always fetches the current release - re-run it to upgrade:

macOS / Linux:

bash
bash <(curl -fsSL https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/auvik/install.sh)

Windows (PowerShell):

powershell
iwr -useb https://raw.githubusercontent.com/Servosity/msp-skills/main/skills/auvik/install.ps1 | iex

Claude Desktop .mcpb users: download the latest .mcpb (top of this section) and re-select it in Settings > Extensions. Claude Code plugin users: /plugin update auvik@msp-skills.

Add to Claude Desktop, the ChatGPT desktop app, GitHub Copilot, Gemini CLI, or another MCP client

After the installer runs, see mcp-install.md and docs/which-agent.md for the per-agent wire-up - one section per agent, including the GitHub Copilot servers key and the ChatGPT desktop app. Claude Desktop's Settings > Extensions panel is the simplest path; the MCP config block (for users who prefer editing JSON) is documented in mcp-install.md.

Install for Hermes

From the Hermes CLI:

bash
hermes skills install servosity/msp-skills/skills/auvik --force

Inside a Hermes chat session:

/skills install servosity/msp-skills/skills/auvik --force

Hermes speaks MCP natively, so it can also use the auvik-mcp server directly - same install path, same env vars.

Install for OpenClaw

Tell your OpenClaw agent (copy this):

Install the auvik skill from https://github.com/servosity/msp-skills/tree/main/skills/auvik. The skill defines how its required CLI (auvik-cli) can be installed via the openclaw: frontmatter block.

OpenClaw isn't generally available yet; the frontmatter wiring is pre-shipped and will activate the moment OpenClaw launches.

Authenticate

Set the credentials the CLI needs (from your Auvik portal):

bash
AUVIK_USERNAME=<value> AUVIK_API_KEY=<value> auvik-cli doctor

doctor checks config, paths, and API reachability, then verifies the credential itself with one authenticated read: it reports valid, rejected (HTTP 401), scope-limited (HTTP 403), or not verified when the probe never reached an endpoint that could check it. It exits 0 even when the credential is rejected, so scripts should add --fail-on error.

What this skill does

Question your MSP keeps askingCommand
What hardware is past end-of-support across every client?auvik-cli eol --bucket expired
What ages out in the next 90 days, for the QBR deck?auvik-cli eol --within 90
Which devices have no configuration backup at all?auvik-cli configuration audit --finding no_backup
What was added, changed, or removed fleet-wide since the last sync?auvik-cli inventory diff --since 7d
Which clients' billed device counts disagree with their inventory?auvik-cli usage reconcile --mismatch-only
Which devices can Auvik not fully poll, and which credential is failing?auvik-cli device discovery-gaps --method snmp
Which devices and clients generate the most alert noise?auvik-cli alert noise --since 30d --group-by client
Which SaaS licences is nobody using?auvik-cli asm shadow --finding unused_licenses
Which client needs attention first before a client review?auvik-cli tenants scorecard --since 30d

Full command reference: guide.md. For the AI-agent operating contract (--agent, --dry-run, when to confirm before mutating), see AGENTS.md.

What makes this different

Most Auvik integrations and MCP servers proxy each question into a live API call. That's fine for one record. It dies at scale, when you are asking "what is past end-of-support across all 40 clients, and which of it is still under warranty" the week before a QBR.

This skill syncs Auvik into a local SQLite mirror with full-text search. Aggregate questions become one local SQL join: instant, offline, and the AI sees the answer, not the raw data. Compound commands like eol, usage reconcile, and changes join across device inventory, lifecycle and warranty dates, billing usage records, config revisions, entity audit entries and alert history - work a stateless API wrapper cannot do.

One gap is structural rather than a matter of convenience: Auvik's API emits no deletion event. filter[modifiedAfter] surfaces additions and changes only, so a decommissioned device simply stops appearing in list responses. A removal is detectable only by keeping your own prior view of the fleet, which is exactly what inventory diff --snapshot records.

The pain this closes

Auvik bills per billable device, and the count that drives the invoice is a number on a screen. When it moves, nothing shows you which devices moved it, and the practical answer ends where the tooling does: export it and count by hand. That is the shape of every question an owner actually asks of Auvik: the data is there, the aggregate is not.

  • The invoice argument. usage reconcile --mismatch-only puts each client's billed count next to the synced inventory and names the device rows on both sides of the difference.
  • The refresh conversation. eol --within 90 buckets every device by the earliest of its end-of-support, end-of-life, end-of-sale, and warranty dates, across every client at once.
  • The silent decommission. inventory diff --since 7d reports what left, which the Auvik API never tells you.
  • The unbacked-up switch. configuration audit --finding no_backup finds devices with no stored config backup, a stale one, or none flagged running.
  • The box nobody can see. device discovery-gaps joins discovery status against the credential probe results, so "why can't we poll this thing" is one command instead of three screens.

See pain-point.md for the longer narrative.

Frequently asked questions

Does this work with ChatGPT?

Yes, in the ChatGPT desktop app. It runs MCP servers locally (STDIO), the way auvik-mcp runs, and shares MCP configuration with Codex (OpenAI): add auvik-mcp under Settings > MCP servers as a STDIO server, or add it once to Codex's ~/.codex/config.toml. ChatGPT on the web is not supported by msp-skills yet: it needs a remote (HTTP) server hosted over HTTPS (see Remote agents in mcp-install.md). If your team works there, a hosted gateway is the better pick; check that your AI app is on the gateway's setup list.

Does this work with Codex, Cursor, Windsurf, Cline, Copilot, or Gemini?

Yes - all of them speak MCP. Cross-tool install commands are in the matrix above and the deep-dive in docs/which-agent.md.

Do I need to know how to code?

No. The recommended install is to paste one sentence into Claude Code or Codex - your agent reads SKILL.md and does the install. The fallback is a one-line installer per OS (bash or PowerShell). Neither path requires writing code. You'll enter your Auvik credentials once.

Is my Auvik data safe?

Your data stays on your machine. The CLI and MCP server are local binaries,, and the MCP server runs over stdio unless you deliberately start it in HTTP mode (auvik-mcp --transport http, or PP_MCP_TRANSPORT=http) for a remote agent; that mode needs a bearer token and stays on loopback unless you give it a TLS certificate. The SQLite mirror sits in a directory under your user account. The AI agent only sees what the CLI returns - typically a query result, not raw bulk data. Credentials are read from your environment or your agent's config; never bundled into this repo or transmitted anywhere by MSP Skills.

Why does it need both a username and an API key?

Auvik authenticates with HTTP Basic: your Auvik user email is the username, the API key is the password. There is no single-token form. You also need the right regional host - AUVIK_BASE_URL selects us1, us2, eu1 and so on, and pointing at the wrong region returns a 401 that looks exactly like a bad key.

Will this hit my Auvik API rate limits?

Mostly no, and that is the point of the mirror. sync does the reading; the nine cross-client commands then answer from local SQLite and touch no API at all, so re-asking a question costs nothing upstream.

Will this replace the Auvik portal?

No. Auvik remains where you watch live network state and work the alert queue. This is for the questions the portal is not shaped to answer: across every client, and across two points in time.

What does it cost?

Free. Apache-2.0 licensed. You pay only for whichever AI agent you use (Claude, ChatGPT, Codex, etc.), and that's billed by your AI provider, not by us.

Safety model

TierExamplesRecommended agent policy
Readeol, configuration audit, inventory diff, usage reconcile, device discovery-gaps, alert noise, asm shadow, changes, sync, search, export, every list / get, and all of the settings and stat SNMP-poller commands (GET-only, despite reading like setters)Allow
Write (routine)alert dismiss-single and its friendly twin alert dismiss - the only write the Auvik API supports; allowlist both namesPreview with --dry-run, then a reviewed write
Credential / securityauth set-credentials (writes the credential to the CLI's credentials file), auth logoutHuman-in-the-loop only
Data egress--deliver webhook:<url> on any command (POSTs that command's output to a URL you name), feedback --send, and bare feedback when AUVIK_FEEDBACK_ENDPOINT is set and AUVIK_FEEDBACK_AUTO_SEND=true - that pair needs no flag at all, so allowlisting feedback as local-only is not safe once both are set (with no endpoint set, feedback only writes a local file)Human-in-the-loop - a webhook sink moves client data off-box

The Auvik API exposes no delete and no administrative write, so there is no Destructive or Admin tier to gate.

The strongest control is the scope you grant the Auvik credentials - the CLI can only do what the credentials are permitted to do. Full details, including how to lock it down, are in governance.md.

Status

Beta, awaiting live verification. The command surface is generated from the Auvik API spec and the cross-client analyses are covered by unit tests against spec-derived fixtures, but no closed-loop receipt from an MSP running this against a production Auvik tenant exists yet - so nothing here has been proven against real Auvik responses. If you run it against your own tenant, the it-works form is how that becomes a badge. MSPs put connectors like this through their paces in our weekly Build Sessions - RSVP at compoundingteams.com/build-sessions.


Standards. Conforms to the open Agent Skills spec (Anthropic, Dec 2025; 40+ agents). MCP-compatible - works with any MCP-capable agent including Hermes. OpenClaw-ready (frontmatter pre-wired, awaiting OpenClaw launch).

Maintained by Servosity. Apache-2.0 licensed. Built with CLI Printing Press. Last updated: 2026-08-15.

Source: skills/auvik/README.md at commit df18ad4

Tools

0
SourceWeft started this package once in an isolated sandbox, without credentials, to list its tools. That failed: the package type cannot run in the sandbox.

Version history

6
  1. v0.2.9LatestNov 7, 2026
  2. v0.2.8Oct 23, 2026
  3. v0.2.7Oct 23, 2026
  4. v0.2.6Oct 22, 2026
  5. v0.2.5Oct 16, 2026
  6. v0.2.4Sep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.