superops-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@superops-mcp Show open high priority tickets"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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
Operator note — GitHub Packages authentication. This package is published to the
@wyre-aiscope 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 theread:packagesscope and supply it to the cloud builder:
Cloudflare Workers — set a build variable named
NODE_AUTH_TOKENto your PAT.DigitalOcean App Platform — set a build-time secret named
GITHUB_TOKENto your PAT.For local installs, run
export NODE_AUTH_TOKEN=$(gh auth token)beforenpm 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 orMCP_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-mcpConfiguration
Set the following environment variables:
export SUPEROPS_API_TOKEN="your-api-token"
export SUPEROPS_SUBDOMAIN="yourcompany"
export SUPEROPS_REGION="us" # or "eu" for EU regionGetting Your API Token
Log in to SuperOps.ai
Click settings icon > "My Profile"
Navigate to "API token" tab
Click "Generate token"
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 domainsuperops_back- Return to main menusuperops_test_connection- Test API connectivity
Clients Domain
superops_clients_list- List clients with filterssuperops_clients_get- Get client detailssuperops_clients_search- Search clients by name/domain
Tickets Domain
superops_tickets_list- List tickets with filterssuperops_tickets_get- Get ticket detailssuperops_tickets_create- Create a new ticketsuperops_tickets_update- Update ticket status/assignmentsuperops_tickets_add_note- Add note to ticketsuperops_tickets_log_time- Log time on ticket
Assets Domain
superops_assets_list- List assets/endpointssuperops_assets_get- Get asset detailssuperops_assets_software- Get software inventorysuperops_assets_patches- Get patch status
Technicians Domain
superops_technicians_list- List technicianssuperops_technicians_get- Get technician detailssuperops_technicians_groups- List technician groups
Custom Domain
superops_custom_query- Run custom GraphQL querysuperops_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 toolssuperops_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_clients_searchA
Search for clients by name or email domain. Returns matching clients with basic information.
Inputs: query (required), max.
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_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
Scored across 21 tools
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.
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.
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.
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
Scopable MSP API: clients, quotes, assessments, compliance, QBRs. OAuth 2.1, read-only or read-write
Query your OpsLevel internal developer portal: catalog, maturity data, and tech docs.
Manage tickets, run agents and workflows, query tables, and search workspace knowledge.
Query and manage SquaredUp dashboards, data streams, the knowledge graph, and KPIs (EU region).
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables interaction with the SuperOps.ai PSA/RMM platform for managing clients, tickets, assets, and technicians via GraphQL API.Apache 2.0
- AlicenseNot gradedqualityDmaintenanceEnables management of customer support tickets, contacts, agents, and knowledge base articles through the Groove HQ GraphQL API.29 npmMIT
- AlicenseAqualityCmaintenanceMCP server for interacting with the SuperOps.ai PSA/RMM platform, providing tools for managing clients, tickets, assets, and technicians via GraphQL API.21Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables 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