Skip to content
plugmcp
DirectorySkillsCategoriesBlog
EN/中文
Sign inSign up
Home/Servers/ESET PROTECT

ESET PROTECT

I
by io.github.WYRE-AI

MCP server for ESET PROTECT's ESET Connect API - device, EDR, vulnerability, patch, and user data.

Power your agent

Add this server

The publisher's own command. Not a PlugMCP endpoint.

Local command
docker run -i --rm ghcr.io/wyre-ai/eset-protect-mcp:v1.0.1
Credentials from the publisher
  • ESETPROTECT_CLIENT_ID — Email of the dedicated ESET Connect API user, created in ESET Business Account with the Integrations toggle enabled.
  • ESETPROTECT_CLIENT_SECRET — Password of the ESET Connect API user paired with ESETPROTECT_CLIENT_ID.
  • ESETPROTECT_REGION — ESET Connect region: us (default), eu, de, jpn, or ca.
  • MCP_TRANSPORT — Transport mode for the server. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.
  • AUTH_MODE — Credential source: 'env' reads vars locally, 'gateway' expects header injection from the WYRE MCP Gateway.
  • LOG_LEVEL — Log verbosity: debug, info, warn, error
Provider
Claude Code
ESETPROTECT_CLIENT_ID=<value> ESETPROTECT_CLIENT_SECRET=<secret> ESETPROTECT_REGION=<value> MCP_TRANSPORT=<value> AUTH_MODE=<value> LOG_LEVEL=<value> claude mcp add io.github.wyre-ai-eset-protect-mcp -- docker run -i --rm ghcr.io/wyre-ai/eset-protect-mcp:v1.0.1

Run in a terminal.

Claude Desktop
{
  "mcpServers": {
    "io.github.wyre-ai-eset-protect-mcp": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "ghcr.io/wyre-ai/eset-protect-mcp:v1.0.1"
      ],
      "env": {
        "ESETPROTECT_CLIENT_ID": "<value>",
        "ESETPROTECT_CLIENT_SECRET": "<secret>",
        "ESETPROTECT_REGION": "<value>",
        "MCP_TRANSPORT": "<value>",
        "AUTH_MODE": "<value>",
        "LOG_LEVEL": "<value>"
      }
    }
  }
}

claude_desktop_config.json

Step-by-step: add this in Claude

Remote URL or a command on your machine? How the two installs differ

Run on PlugMCP

Host a copy with our keys and logs.

A new server you create. It is not this listing's official endpoint. Use the publisher install when you want their URL and their credentials.

Launch

Related MCP

View more
  • Firecrawl🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
  • N
    NotionToken-auth Notion MCP: pages, databases, blocks, comments, files. Runs headless in CI and agents.
  • Context7Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors

Related skills

View all
  • reaReverse engineer anything with agents, from app behavior down to native binaries.
  • rea-changelog-updatePrepare or rewrite REA release changelogs and GitHub release notes from pinned Git history, with verified contributor thanks and Release Please synchronization.
  • rea-tool-designDesign or change REA investigation tools, CLI/MCP contracts, provider capabilities, and Evidence semantics.

Questions

How do I install ESET PROTECT?
Copy the stdio config for Cursor, Claude Desktop, Claude Code, or VS Code on this page. It uses the publisher's install, not a PlugMCP proxy.
Does ESET PROTECT need an API key?
The publisher lists these environment variables: ESETPROTECT_CLIENT_ID, ESETPROTECT_CLIENT_SECRET, ESETPROTECT_REGION, MCP_TRANSPORT, AUTH_MODE, LOG_LEVEL.
What transport does ESET PROTECT use?
ESET PROTECT runs locally over stdio.
When was ESET PROTECT last checked?
Last checked 2026-10-21. MCP server for ESET PROTECT's ESET Connect API - device, EDR, vulnerability, patch, and user data.

MCP server for ESET PROTECT's ESET Connect API - device, EDR, vulnerability, patch, and user data.

ESET PROTECT MCP Server

MCP server for ESET PROTECT's ESET Connect API gateway - endpoint fleet visibility (devices and groups), detection/EDR investigation, vulnerability data, patch status, and user management - for AI assistants and the WYRE Conduit gateway.

Authentication

Create a dedicated API user in ESET Business Account: User Management > create a user with read-only permission > enable the Integrations toggle. This gives you an email/password pair for that user.

ESET Connect's token endpoint (POST /oauth/token) is documented in its own OpenAPI spec as a password grant - username/password fields, not client_id/client_secret with grant_type=client_credentials. This server accepts clientId/clientSecret (matching the credential shape used across WYRE's other MCP connectors) and sends them as username/password in that grant. It handles the resulting bearer token's caching and refresh (via the returned refresh_token, falling back to a full re-login if the refresh token itself is rejected) internally - callers only ever supply the long-lived email/password pair.

Configuration

Env varDescription
ESETPROTECT_CLIENT_IDEmail of the dedicated ESET Connect API user.
ESETPROTECT_CLIENT_SECRETPassword of that API user.
ESETPROTECT_REGIONus (default), eu, de, jpn, or ca - the ESET Connect region your ESET Business Account was provisioned in.
MCP_TRANSPORTstdio (default) or http.
AUTH_MODEenv (default, reads the vars above) or gateway (credentials arrive per-request via X-EsetProtect-* headers, injected by the Conduit gateway).
CONDUIT_S2S_SECRETWhen set, the HTTP transport requires a valid X-Gateway-S2S header (Conduit sidecar auth) on every /mcp request.
LOG_LEVELdebug | info (default) | warn | error.

Each ESET Connect API domain (device, incident, vulnerability, patch, and user management) is hosted on its own per-region subdomain, e.g. https://us.device-management.eset.systems; the auth host follows the same regional pattern, e.g. https://us.business-account.iam.eset.systems. ESETPROTECT_REGION selects the prefix for all of them.

Tools

Device Management

  • esetprotect_list_device_groups - list device groups.
  • esetprotect_list_group_devices - list the devices in a group.
  • esetprotect_list_devices - list managed devices, filterable by display name, functionality status, or mute state.
  • esetprotect_get_device - get a device by UUID.
  • esetprotect_batch_get_devices - get multiple devices by UUID in one call.

Incident Management (detections, detection groups, EDR)

  • esetprotect_list_detections / esetprotect_get_detection - v1 detections (legacy surface).
  • esetprotect_list_detections_v2 / esetprotect_get_detection_v2 / esetprotect_batch_get_detections - v2 detections (endpoint, cloud office, and EDR).
  • esetprotect_list_detection_groups / esetprotect_get_detection_group - detections clustered into groups.
  • esetprotect_list_edr_rules / esetprotect_get_edr_rule - EDR detection rules.
  • esetprotect_list_edr_rule_exclusions / esetprotect_get_edr_rule_exclusion - EDR rule exclusions.

Vulnerability Management

  • esetprotect_list_device_os_vulnerabilities - OS vulnerabilities found on devices.
  • esetprotect_list_device_vulnerabilities - vulnerabilities found on devices (application/OS/package scope).
  • esetprotect_list_recent_scans - recent vulnerability scan details.
  • esetprotect_list_vulnerable_devices - devices with known vulnerabilities.

Patch Management

  • esetprotect_list_recent_application_patching_details - most recent application-patching processes fleet-wide.
  • esetprotect_list_device_patches - patches for devices, filterable by patch type.
  • esetprotect_list_patching_process_details - detailed patching-process history within a time window.

User Management

  • esetprotect_list_users - list users, filterable by email, display name, protection status, and more.
  • esetprotect_get_user - get a user by UUID.
  • esetprotect_batch_get_users - get multiple users by UUID in one call (atomic - all or none).

Scope

This is a v1, read-only fleet/security-visibility surface. Explicitly deferred: device move/rename and batch import, detection and detection-group resolve, EDR rule and rule-exclusion create/update/delete, and any asset-management group create/delete/move/rename endpoints. These are mutation/provisioning actions out of scope for a read-only monitoring connector and can be added as a follow-up.

The incident-management API also exposes a separate /v2/incidents case-management surface (list/get/close/reopen, comments) alongside detections and detection-groups; it is not covered by this v1 surface either, for the same reason.

Development

npm install
npm run build
npm test
npm run lint   # tsc --noEmit

Docker

docker build -t eset-protect-mcp .
docker run -p 8080:8080 \
  -e ESETPROTECT_CLIENT_ID=... \
  -e ESETPROTECT_CLIENT_SECRET=... \
  eset-protect-mcp
How do I install ESET PROTECT?
Copy the stdio config for Cursor, Claude Desktop, Claude Code, or VS Code on this page. It uses the publisher's install, not a PlugMCP proxy.
Does ESET PROTECT need an API key?
The publisher lists these environment variables: ESETPROTECT_CLIENT_ID, ESETPROTECT_CLIENT_SECRET, ESETPROTECT_REGION, MCP_TRANSPORT, AUTH_MODE, LOG_LEVEL.
What transport does ESET PROTECT use?
ESET PROTECT runs locally over stdio.
When was ESET PROTECT last checked?
Last checked 2026-10-21. MCP server for ESET PROTECT's ESET Connect API - device, EDR, vulnerability, patch, and user data.

No tool list yet. Remote servers get one after the first health check.

plugmcp

Plug any tool into any agent. MCP servers for people who do not write servers. Gateway for volume, n8n for apps.

  • github.com/TODO
  • x.com/TODO
  • linkedin.com/company/TODO

PlugMCP, 2026

Product
  • Browse
  • Install
  • Host your own
  • Pricing
  • Voice mode
  • Browser
Directory
  • All MCP servers
  • MCP Apps
  • Tools
  • Agent skills
  • Categories
  • New
  • Voice
  • Submit a server
Developers
  • Docs
  • Blog
  • Club
  • Work with us
  • What is MCP
  • What is WebMCP
  • Status
Company
  • About
  • Contact
  • Terms
  • Privacy
  • DPA