Skip to main content
Glama

Atera MCP Server

Model Context Protocol (MCP) server for interacting with the Atera RMM API. Implements a decision tree architecture for efficient tool discovery and reduced context overhead.

One-Click Deployment

Deploy to DO

Deploy to Cloudflare Workers

Features

  • Decision Tree Navigation: Tools are organized by domain (customers, agents, tickets, alerts, contacts). Navigate to a domain first, then use domain-specific tools.

  • Lazy Client Loading: The Atera client is only instantiated when first needed, reducing startup time.

  • Full API Coverage: Supports customer management, device/agent monitoring, ticket operations, alert handling, and contact management.

  • Rate Limit Handling: Built-in rate limiting via the node-atera client (700 req/min).

Installation

npm install @wyre-technology/atera-mcp

Or build from source:

git clone https://github.com/wyre-technology/atera-mcp.git
cd atera-mcp
npm install
npm run build

Configuration

Set the following environment variable:

Variable

Required

Description

ATERA_API_KEY

Yes

Your Atera API key from Admin > API

Getting Your API Key

  1. Log into Atera as an admin

  2. Go to Admin > API

  3. Generate or copy your API key

Usage

With Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "atera": {
      "command": "npx",
      "args": ["@wyre-technology/atera-mcp"],
      "env": {
        "ATERA_API_KEY": "your-api-key-here"
      }
    }
  }
}

With MCP Gateway

Configure in the gateway registry:

{
  "name": "atera-mcp",
  "command": "node",
  "args": ["/path/to/atera-mcp/dist/index.js"],
  "env": {
    "ATERA_API_KEY": "${ATERA_API_KEY}"
  }
}

Docker

docker build -t atera-mcp .
docker run -e ATERA_API_KEY=your-key atera-mcp

Decision Tree Architecture

This server uses a navigation-based approach to tool discovery:

  1. Start: Only atera_navigate tool is available

  2. Navigate: Call atera_navigate with a domain (customers, agents, tickets, alerts, contacts)

  3. Domain Tools: After navigation, domain-specific tools become available

  4. Back: Use atera_back to return to domain selection

This architecture:

  • Reduces tool list size for better LLM performance

  • Groups related operations logically

  • Minimizes context window usage

Available Domains

Customers

Manage customer (company) records.

  • atera_customers_list - List customers with pagination

  • atera_customers_get - Get customer by ID

  • atera_customers_create - Create new customer

Agents

Manage devices/endpoints with the Atera agent installed.

  • atera_agents_list - List agents with optional customer filter

  • atera_agents_get - Get agent by ID

  • atera_agents_get_by_machine - Get agent by machine name

Tickets

Manage service tickets.

  • atera_tickets_list - List tickets with filters

  • atera_tickets_get - Get ticket by ID

  • atera_tickets_create - Create new ticket

  • atera_tickets_update - Update existing ticket

Alerts

Monitor alerts from devices and agents.

  • atera_alerts_list - List alerts with filters

  • atera_alerts_get - Get alert by ID

  • atera_alerts_by_agent - List alerts for an agent

  • atera_alerts_by_device - List alerts for a device

Contacts

Manage customer contacts.

  • atera_contacts_list - List all contacts

  • atera_contacts_get - Get contact by ID

  • atera_contacts_by_customer - List contacts for a customer

Example Conversation

User: List all open tickets

Claude: I'll navigate to the tickets domain and list open tickets.
[Calls atera_navigate with domain: "tickets"]
[Calls atera_tickets_list with ticketStatus: "Open"]

Result: Found 15 open tickets...

Development

# Install dependencies
npm install

# Build
npm run build

# Run in development
npm run dev

# Type check
npm run typecheck

# Lint
npm run lint

# Test
npm run test

API Rate Limits

Atera API allows 700 requests per minute. The underlying node-atera client handles rate limiting automatically with request queuing.

License

Apache-2.0

Contributing

Contributions welcome! Please read our contributing guidelines and submit PRs to the main branch.

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
5dRelease cycle
17Releases (12mo)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wyre-technology/atera-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server