oci ghcr.io/wyre-technology/atera-mcp:v1.5.9stdioApache-2.0updated 9d ago
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.
Atera 能做什么?
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
[!IMPORTANT] Before you click: this server depends on
@wyre-technology/node-atera, which is hosted on the GitHub Packages npm registry. GitHub Packages has no anonymous access — even though the package is public, everynpm installneeds a token. The cloud builder runsnpm installfor you, so you must give it one, or the build fails withnpm error 401 Unauthorized ... npm.pkg.github.com.
- Create a GitHub Personal Access Token with the
read:packagesscope (classic token). Any GitHub account works — you do not need to be a member of theWYRE-AIorg to read its public packages.- Add it as a build variable when prompted by the deploy flow:
- Cloudflare Workers → set a build variable named
NODE_AUTH_TOKENto your PAT (Workers → Settings → Build → Variables and Secrets).- DigitalOcean App Platform → set an encrypted env var named
GITHUB_TOKENwith scope Build Time to your PAT (the.do/app.yamlalready declares it).
[!NOTE] The DigitalOcean target builds the full Docker image and runs the complete MCP server over HTTP — this is the recommended path for operators. The Cloudflare Workers target is currently a thin entrypoint stub (the
/mcproute returns501 Not Implemented) and is best suited to gateway-style deployments; for a full self-hosted server prefer DigitalOcean or the prebuilt container image (ghcr.io/wyre-ai/atera-mcp).
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).
- Interactive Ticket Card (MCP Apps):
atera_tickets_getrenders as an interactive card in MCP Apps hosts (Claude Desktop/web) with an in-card "Add comment" round-trip viaatera_tickets_add_comment(internal-only by default); plain-JSON behavior is unchanged in other hosts. The card is neutral by default and brandable viawindow.__BRAND__injection orMCP_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
This package is published to the GitHub Packages npm registry, which requires a token even for public packages. Authenticate once, then install:
# Authenticate npm to GitHub Packages (token needs the read:packages scope)
export NODE_AUTH_TOKEN=$(gh auth token) # or a PAT with read:packages
npm install @wyre-ai/atera-mcp
The repo's .npmrc already points the @wyre-ai scope at GitHub Packages and
reads the token from NODE_AUTH_TOKEN, so no further config is needed.
Or build from source:
git clone https://github.com/WYRE-AI/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
- 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-ai/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:
- Start: Only
atera_navigatetool is available - Navigate: 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 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.
安装
把 Atera 添加到你的客户端。选择你正在使用的那个。
claude mcp add ghcr-io-wyre-technology-atera-mcp-v1-5-9 -- docker run -i --rm ghcr.io/wyre-technology/atera-mcp:v1.5.9codex mcp add ghcr-io-wyre-technology-atera-mcp-v1-5-9 -- docker run -i --rm ghcr.io/wyre-technology/atera-mcp:v1.5.9amp mcp add ghcr-io-wyre-technology-atera-mcp-v1-5-9 -- docker run -i --rm ghcr.io/wyre-technology/atera-mcp:v1.5.9{
"mcpServers": {
"ghcr-io-wyre-technology-atera-mcp-v1-5-9": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/atera-mcp:v1.5.9"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"ghcr-io-wyre-technology-atera-mcp-v1-5-9": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/atera-mcp:v1.5.9"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"ghcr-io-wyre-technology-atera-mcp-v1-5-9","command":"docker","args":["run","-i","--rm","ghcr.io/wyre-technology/atera-mcp:v1.5.9"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"ghcr-io-wyre-technology-atera-mcp-v1-5-9": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/atera-mcp:v1.5.9"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"ghcr-io-wyre-technology-atera-mcp-v1-5-9": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/atera-mcp:v1.5.9"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"ghcr-io-wyre-technology-atera-mcp-v1-5-9": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/atera-mcp:v1.5.9"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"ghcr-io-wyre-technology-atera-mcp-v1-5-9": {
"type": "local",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/atera-mcp:v1.5.9"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"ghcr-io-wyre-technology-atera-mcp-v1-5-9": {
"command": {
"path": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-technology/atera-mcp:v1.5.9"
]
}
}
}
}Add to your Zed `settings.json`.
docker run -i --rm ghcr.io/wyre-technology/atera-mcp:v1.5.9Run `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
评分
39 / 100
不完整
- 文档25/25
- 维护25/25
- 可信度16/20
- 能力0/15
- 安装体验12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 1 days ago
- Has a release history
- Repository is not archived
- Licensed Apache-2.0
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
版本历史
| 版本 | 发布于 |
|---|---|
| 1.5.9最新 | 2026年8月20日 |
| 1.5.8 | 2026年8月20日 |
| 1.5.7 | 2026年8月17日 |
| 1.5.6 | 2026年8月13日 |
| 1.5.5 | 2026年8月13日 |
| 1.5.4 | 2026年8月10日 |
| 1.5.3 | 2026年8月7日 |
| 1.5.2 | 2026年7月25日 |
| 1.5.1 | 2026年7月18日 |
| 1.5.0 | 2026年7月17日 |
| 1.4.0 | 2026年6月2日 |
| 1.3.3 | 2026年6月2日 |
| 1.3.2 | 2026年5月29日 |