atera-mcp
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
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-mcpOr build from source:
git clone https://github.com/wyre-technology/atera-mcp.git
cd atera-mcp
npm install
npm run buildConfiguration
Set the following environment variable:
Variable | Required | Description |
| Yes | Your Atera API key from Admin > API |
Getting Your API Key
Log into Atera as an admin
Go to Admin > API
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-mcpDecision Tree Architecture
This server uses a navigation-based approach to tool discovery:
Start: Only
atera_navigatetool is availableNavigate: Call
atera_navigatewith a domain (customers, agents, tickets, alerts, contacts)Domain Tools: After navigation, domain-specific tools become available
Back: Use
atera_backto 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 paginationatera_customers_get- Get customer by IDatera_customers_create- Create new customer
Agents
Manage devices/endpoints with the Atera agent installed.
atera_agents_list- List agents with optional customer filteratera_agents_get- Get agent by IDatera_agents_get_by_machine- Get agent by machine name
Tickets
Manage service tickets.
atera_tickets_list- List tickets with filtersatera_tickets_get- Get ticket by IDatera_tickets_create- Create new ticketatera_tickets_update- Update existing ticket
Alerts
Monitor alerts from devices and agents.
atera_alerts_list- List alerts with filtersatera_alerts_get- Get alert by IDatera_alerts_by_agent- List alerts for an agentatera_alerts_by_device- List alerts for a device
Contacts
Manage customer contacts.
atera_contacts_list- List all contactsatera_contacts_get- Get contact by IDatera_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 testAPI 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.
This server cannot be installed
Maintenance
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