Skip to main content
Glama
superops-mcp
by donoree

SuperOps.ai MCP Server

MCP server for Claude that provides tools to interact with the SuperOps.ai PSA/RMM platform using their GraphQL API.

One-Click Deployment

Deploy to DO

Deploy to Cloudflare Workers

Operator note — GitHub Packages authentication. This package is published to the @wyre-ai scope on GitHub Packages, which requires an authentication token on every install (GitHub Packages has no anonymous reads, even for public packages). Create a GitHub Personal Access Token with the read:packages scope and supply it to the cloud builder:

  • Cloudflare Workers — set a build variable named NODE_AUTH_TOKEN to your PAT.

  • DigitalOcean App Platform — set a build-time secret named GITHUB_TOKEN to your PAT.

For local installs, run export NODE_AUTH_TOKEN=$(gh auth token) before npm install.

Related MCP server: groove-mcp

Features

  • Decision Tree Architecture: Navigate to domains (clients, tickets, assets, technicians) to see relevant tools

  • Lazy Loading: Domain modules load on-demand for faster startup

  • Full CRUD Operations: List, get, create, and update entities

  • GraphQL Support: Use custom queries for advanced operations

  • Interactive Ticket Card (MCP Apps): ticket results render as an interactive card in MCP Apps hosts — neutral by default, brandable via window.__BRAND__ injection or MCP_BRAND_* env vars

Interactive Ticket Card (MCP Apps)

superops_tickets_get renders as an interactive card in MCP Apps hosts (Claude Desktop/web) with an in-card "Add note" round-trip via superops_tickets_add_note that always posts internal-only notes (isPublic: false); plain-JSON behavior is unchanged in other hosts. The card is neutral by default and brandable via window.__BRAND__ injection or MCP_BRAND_* env vars (MCP_BRAND_NAME, MCP_BRAND_LOGO_URL, MCP_BRAND_PRIMARY_COLOR, MCP_BRAND_ACCENT_COLOR, MCP_BRAND_BG, MCP_BRAND_TEXT) — no rebuild needed.

Installation

# The @wyre-ai scope lives on GitHub Packages and needs a token to install:
export NODE_AUTH_TOKEN=$(gh auth token)
npm install @wyre-ai/superops-mcp

Configuration

Set the following environment variables:

export SUPEROPS_API_TOKEN="your-api-token"
export SUPEROPS_SUBDOMAIN="yourcompany"
export SUPEROPS_REGION="us"  # or "eu" for EU region

Getting Your API Token

  1. Log in to SuperOps.ai

  2. Click settings icon > "My Profile"

  3. Navigate to "API token" tab

  4. Click "Generate token"

  5. Copy and securely store the token

Usage with Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "superops": {
      "command": "npx",
      "args": ["@wyre-ai/superops-mcp"],
      "env": {
        "SUPEROPS_API_TOKEN": "your-api-token",
        "SUPEROPS_SUBDOMAIN": "yourcompany",
        "SUPEROPS_REGION": "us"
      }
    }
  }
}

Available Domains & Tools

Navigation

  • superops_navigate - Navigate to a domain

  • superops_back - Return to main menu

  • superops_test_connection - Test API connectivity

Clients Domain

  • superops_clients_list - List clients with filters

  • superops_clients_get - Get client details

  • superops_clients_search - Search clients by name/domain

Tickets Domain

  • superops_tickets_list - List tickets with filters

  • superops_tickets_get - Get ticket details

  • superops_tickets_create - Create a new ticket

  • superops_tickets_update - Update ticket status/assignment

  • superops_tickets_add_note - Add note to ticket

  • superops_tickets_log_time - Log time on ticket

Assets Domain

  • superops_assets_list - List assets/endpoints

  • superops_assets_get - Get asset details

  • superops_assets_software - Get software inventory

  • superops_assets_patches - Get patch status

Technicians Domain

  • superops_technicians_list - List technicians

  • superops_technicians_get - Get technician details

  • superops_technicians_groups - List technician groups

Custom Domain

  • superops_custom_query - Run custom GraphQL query

  • superops_custom_mutation - Run custom GraphQL mutation

Example Usage

User: What tools are available?
Claude: Use superops_navigate to select a domain...

User: Navigate to tickets
Claude: [calls superops_navigate with domain: "tickets"]
Now in tickets domain. Available tools: superops_tickets_list, superops_tickets_get...

User: Show open high priority tickets
Claude: [calls superops_tickets_list with status: ["Open"], priority: ["High"]]
Here are the open high priority tickets...

Rate Limits

SuperOps.ai API has a rate limit of 800 requests per minute per API token.

License

Apache-2.0

Support

For issues and feature requests, please visit the GitHub repository.

Available Tools

21 tools
superops_assets_getA

Get detailed information for a specific asset including hardware, OS, and network details.

Inputs: assetId (required).

superops_assets_listA

List assets (endpoints) in SuperOps.ai RMM. Can filter by status, platform, or client.

Inputs: max, cursor, status, clientId, +1 more.

superops_assets_patchesA

Get patch status and pending patches for a specific asset.

Inputs: assetId (required), status, severity.

superops_assets_softwareA

Get the software inventory for a specific asset.

Inputs: assetId (required), max, search.

superops_clients_getA

Get detailed information for a specific client by their account ID.

Inputs: accountId (required).

superops_clients_listA

List clients (accounts) in SuperOps.ai. Can filter by status, stage, or paginate through results.

Inputs: max, stage, cursor, status.

superops_custom_mutationB

Run a custom GraphQL mutation against the SuperOps.ai API. For advanced write operations not covered by standard tools.

Inputs: mutation (required), variables.

superops_custom_queryA

Run a custom GraphQL query against the SuperOps.ai API. For advanced use cases not covered by standard tools.

Inputs: query (required), variables.

superops_navigateA

Discover available SuperOps.ai tools by domain. Returns tool names and descriptions for the selected domain. All tools are callable at any time — this is a help/discovery aid, not a prerequisite.

Inputs: domain (required).

superops_statusB

Show credentials status and available domains

Inputs: no named parameters.

superops_technicians_getA

Get detailed information for a specific technician by their ID.

Inputs: technicianId (required).

superops_technicians_groupsB

List technician groups/teams in SuperOps.ai.

Inputs: max.

superops_technicians_listB

List technicians (agents) in SuperOps.ai. Can filter by active status or team.

Inputs: max, cursor, teamId, activeOnly.

superops_test_connectionA

Test the connection to SuperOps.ai API using configured credentials.

Inputs: no named parameters.

superops_tickets_add_noteA

Add a note to a ticket. Can be internal or public (visible to client).

Inputs: content (required), ticketId (required), isPublic.

superops_tickets_createC

Create a new ticket in SuperOps.ai.

Inputs: subject (required), clientId (required), priority, description, +3 more.

superops_tickets_getA

Get detailed information for a specific ticket by its ID.

Inputs: ticketId (required).

superops_tickets_listB

List tickets in SuperOps.ai. Can filter by status, priority, client, or assignee.

Inputs: max, cursor, status, clientId, +3 more.

superops_tickets_log_timeB

Log time spent on a ticket.

Inputs: duration (required), ticketId (required), billable, workType, +1 more.

superops_tickets_updateC

Update an existing ticket - change status, priority, assignment, or add resolution.

Inputs: ticketId (required), status, priority, assigneeId, +2 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 21 tools

    Disambiguation5/5

    Each tool targets a distinct domain-action combination, and even overlapping areas like clients_list vs clients_search are clearly differentiated by filters vs name/email lookup. The custom GraphQL tools are explicitly positioned as fallbacks for advanced cases, not competing with the standard tools.

    Naming Consistency4/5

    The vast majority of tools follow a superops_<domain>_<action> pattern. Minor deviations exist: assets_software, assets_patches, and technicians_groups are noun-style getters, and the utility tools like status and navigate sit outside the pattern, but overall naming remains highly predictable.

    Tool Count4/5

    At 21 tools, the server is on the heavier side, but the count is justified by covering assets, tickets, clients, technicians, custom GraphQL, and connection/discovery utilities. Each tool maps to a meaningful operation with little redundancy.

    Completeness4/5

    The tool surface covers core asset, ticket, client, and technician workflows well, with ticket CRUD plus notes and time logging. Minor lifecycle gaps like ticket deletion or client creation are not directly exposed, but the presence of custom_query and custom_mutation provides a general escape hatch.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables interaction with the SuperOps.ai PSA/RMM platform for managing clients, tickets, assets, and technicians via GraphQL API.
      Apache 2.0
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables management of customer support tickets, contacts, agents, and knowledge base articles through the Groove HQ GraphQL API.
      29 npm
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      MCP server for interacting with the SuperOps.ai PSA/RMM platform, providing tools for managing clients, tickets, assets, and technicians via GraphQL API.
      21
      Apache 2.0
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables interaction with N-able RMM (N-sight) API to manage clients, sites, devices, and retrieve monitoring data such as checks, patches, and performance history.
      Apache 2.0