MCP server for TacticalRMM (Tactical RMM). Read-only by default — an AI can read your whole fleet, but running commands on machines needs per-command human approval behind password + TOTP, and everything is audit-logged. Claude Desktop, Claude Code, LM Studio.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add tacticalrmm --env TRMM_API_URL='<TRMM_API_URL>' --env TRMM_READONLY_API_KEY='<TRMM_READONLY_API_KEY>' --env TRMM_COMMAND_API_KEY='<TRMM_COMMAND_API_KEY>' -- uvx trmm-mcp~/.codex/config.toml
[mcp_servers.tacticalrmm]
command = "uvx"
args = ["trmm-mcp"]
env = { TRMM_API_URL = "<TRMM_API_URL>", TRMM_READONLY_API_KEY = "<TRMM_READONLY_API_KEY>", TRMM_COMMAND_API_KEY = "<TRMM_COMMAND_API_KEY>" }
# codex mcp add tacticalrmm --env TRMM_API_URL='<TRMM_API_URL>' --env TRMM_READONLY_API_KEY='<TRMM_READONLY_API_KEY>' --env TRMM_COMMAND_API_KEY='<TRMM_COMMAND_API_KEY>' -- uvx trmm-mcp~/.cursor/mcp.json
{
"mcpServers": {
"tacticalrmm": {
"command": "uvx",
"args": [
"trmm-mcp"
],
"env": {
"TRMM_API_URL": "<TRMM_API_URL>",
"TRMM_READONLY_API_KEY": "<TRMM_READONLY_API_KEY>",
"TRMM_COMMAND_API_KEY": "<TRMM_COMMAND_API_KEY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"tacticalrmm": {
"type": "stdio",
"command": "uvx",
"args": [
"trmm-mcp"
],
"env": {
"TRMM_API_URL": "<TRMM_API_URL>",
"TRMM_READONLY_API_KEY": "<TRMM_READONLY_API_KEY>",
"TRMM_COMMAND_API_KEY": "<TRMM_COMMAND_API_KEY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"tacticalrmm": {
"command": "uvx",
"args": [
"trmm-mcp"
],
"env": {
"TRMM_API_URL": "<TRMM_API_URL>",
"TRMM_READONLY_API_KEY": "<TRMM_READONLY_API_KEY>",
"TRMM_COMMAND_API_KEY": "<TRMM_COMMAND_API_KEY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"tacticalrmm": {
"command": "uvx",
"args": [
"trmm-mcp"
],
"env": {
"TRMM_API_URL": "<TRMM_API_URL>",
"TRMM_READONLY_API_KEY": "<TRMM_READONLY_API_KEY>",
"TRMM_COMMAND_API_KEY": "<TRMM_COMMAND_API_KEY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"tacticalrmm": {
"command": "uvx",
"args": [
"trmm-mcp"
],
"env": {
"TRMM_API_URL": "<TRMM_API_URL>",
"TRMM_READONLY_API_KEY": "<TRMM_READONLY_API_KEY>",
"TRMM_COMMAND_API_KEY": "<TRMM_COMMAND_API_KEY>"
}
}
}
}Environment variables
TRMM_API_URLTRMM_READONLY_API_KEYTRMM_COMMAND_API_KEY
Replace the placeholders with your own credentials and keep them out of version control.