mcpField
T
Termix

Termix

Local
github.com/sujirodevCloud & Infra1Updated 5w ago

About Termix

termix-mcp is an MCP server for self-hosted Termix, letting agents inspect and operate hosts, snippets, dashboards, metrics, and audit records. It offers a curated tool set with read-only mode, tool-set controls, and secret masking in outputs.

Key features

  1. 01Manage hosts and command snippets
  2. 02View dashboards, metrics, and audit records
  3. 03Control tools with tool sets and allowlists
  4. 04Hide and block write operations in read-only mode
  5. 05Mask secrets in outputs

Use cases

  1. 01Check registered hosts and their metrics
  2. 02Run command snippets saved in Termix
  3. 03Review audit activity and system status
  4. 04Restrict an agent to read-only operations

MCP support

The MCP server exposes Termix host, snippet, dashboard, metrics, and audit functions as tools, with optional tool sets such as files and containers. It supports stdio or HTTP connections, read-only mode, and tool access controls.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"sujirodev-termix": {
"command": "uvx",
"args": [
"termix-mcp"
],
"env": {
"TERMIX_URL": "<TERMIX_URL>",
"TERMIX_API_KEY": "<TERMIX_API_KEY>",
"TERMIX_MCP_TOOLSETS": "<TERMIX_MCP_TOOLSETS>",
"TERMIX_MCP_READ_ONLY": "<TERMIX_MCP_READ_ONLY>"
}
}
}
}
Run commanduvx termix-mcp
Environment variables to set
TERMIX_URLBase URL of the Termix instance
TERMIX_API_KEYSecretTermix API key (tmx_...)
TERMIX_MCP_TOOLSETSdefault, all, or a comma-separated list (hosts,snippets,files,...)
TERMIX_MCP_READ_ONLYHide and block every write tool

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypitermix-mcp0.1.0
ocighcr.io/sujirodev/termix-mcp:0.1.0

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

termix-mcp

CI PyPI License Python Docker

MCP server for Termix, the self-hosted SSH/RDP/VNC manager. Lets an agent (Claude Desktop, Claude Code, Cursor, VS Code...) list and operate your Termix's hosts, snippets, dashboard, metrics and audit trail, built on top of termix-sdk.

Not a 1:1 wrapper of the Termix API: it's a curated set of tools, secure by default (no secrets, no persistent SSH session, no destructive tools outside of explicit toolsets).

MCP Registry

Install

uvx termix-mcp

Alternatives: pip install termix-mcp or the ghcr.io/sujirodev/termix-mcp image.

Requires a Termix API key (tmx_...) with the minimum RBAC permissions for what the agent will do - see SECURITY.md.

Configure in your client

Claude Desktop / Claude Code (claude_desktop_config.json or .mcp.json):

{
  "mcpServers": {
    "termix": {
      "command": "uvx",
      "args": ["termix-mcp"],
      "env": {
        "TERMIX_URL": "https://termix.example.com",
        "TERMIX_API_KEY": "tmx_xxxxxxxxxxxxxxxxxxxxxxxx"
      }
    }
  }
}

Cursor / VS Code: same format, in each one's MCP configuration file.

Install via the MCP Registry

termix-mcp is published in the official MCP Registry under the name io.github.sujirodev/termix-mcp, with both a PyPI (uvx) package and an OCI (Docker) image listed - see server.json.

Clients that support registry-based discovery can find and install it directly from there instead of hand-writing the JSON config above:

curl -s "https://registry.modelcontextprotocol.io/v0/servers?search=io.github.sujirodev/termix-mcp"

Then follow your client's own "add from registry" flow, searching for io.github.sujirodev/termix-mcp. You'll still need to set TERMIX_URL and TERMIX_API_KEY yourself - the registry entry doesn't carry your credentials.

You say / what happens

You sayWhat the tool does
"what hosts do I have registered?"termix_list_hosts
"show me the metrics for host X"termix_get_host_metrics
"run snippet Y on host X"termix_run_snippet (blocked in read-only mode)
"create a new host for this server"termix_create_host (blocked in read-only mode)
"what audit activity happened this week?"termix_list_audit_events

Environment variables

VariableDefaultDescription
TERMIX_URLrequiredTermix base URL
TERMIX_API_KEYrequiredtmx_... API key (JWT/TOTP are not supported)
TERMIX_SERVICE_URLSemptyJSON {"database": "http://..."} for installs without a proxy
TERMIX_VERIFY_SSLtrueValidates the TLS certificate
TERMIX_TIMEOUT30Timeout per request (s)
TERMIX_MAX_RETRIES2Passed through to the SDK
TERMIX_MCP_READ_ONLYfalseHides and blocks write tools
TERMIX_MCP_TOOLSETSdefaultdefault, all, or a list hosts,snippets,files
TERMIX_MCP_ENABLED_TOOLSemptyAllowlist by tool name
TERMIX_MCP_DISABLED_TOOLSemptyDenylist by tool name
TERMIX_MCP_REDACT_SECRETStrueMasks secrets in all outputs
TERMIX_MCP_MAX_ITEMS50Default item limit for listings
TERMIX_MCP_TRANSPORTstdiostdio or http
TERMIX_MCP_HTTP_HOST / _PORT127.0.0.1 / 8765HTTP transport bind
TERMIX_MCP_HTTP_PATHgenerated and loggedSecret path of the HTTP endpoint
TERMIX_MCP_LOG_LEVELINFOLog level (stderr on stdio, stdout on http)

Toolsets

Enabled by default: hosts, snippets, dashboard, metrics, system, audit.

Opt-in (TERMIX_MCP_TOOLSETS=hosts,files,docker,...): credentials, files, docker, tunnels, alerts, automations, users.

Disabled and explicit (never included in all): admin, dangerous.

TERMIX_MCP_READ_ONLY=true hides and blocks every tool that isn't read-only, in any toolset.

Tools

Full tool list (generated by scripts/generate_tool_docs.py)
ToolToolsetRead-onlyDestructiveFlags
termix_get_audit_forwardingadminyesnoadmin
termix_get_brandingadminyesnoadmin
termix_get_encryption_statusadminyesnoadmin
termix_get_host_defaultsadminyesnoadmin
termix_get_termix_id_statusadminyesnoadmin
termix_list_sso_providersadminyesnoadmin
termix_update_brandingadminnonoadmin
termix_acknowledge_alert_firingalertsnono-
termix_create_alert_rulealertsnono-
termix_delete_alert_rulealertsnoyes-
termix_list_alert_rulesalertsyesno-
termix_get_session_logaudityesno-
termix_list_audit_eventsaudityesno-
termix_list_session_logsaudityesno-
termix_get_automationautomationsyesno-
termix_list_automationsautomationsyesno-
termix_list_fleetsautomationsyesno-
termix_run_automationautomationsnonodata-access
termix_create_credentialcredentialsnono-
termix_delete_credentialcredentialsnoyes-
termix_get_credentialcredentialsyesno-
termix_list_credentialscredentialsyesno-
termix_reveal_credentialcredentialsyesnodata-access
termix_update_credentialcredentialsnono-
termix_get_dashboard_summarydashboardyesno-
termix_get_homepagedashboardyesno-
termix_list_open_tabsdashboardyesno-
termix_list_workspacesdashboardyesno-
termix_get_containerdockeryesnodata-access
termix_get_container_logsdockeryesnodata-access
termix_get_container_statsdockeryesnodata-access
termix_list_containersdockeryesnodata-access
termix_restart_containerdockernonodata-access
termix_start_containerdockernonodata-access
termix_stop_containerdockernonodata-access
termix_create_folderfilesnonodata-access
termix_delete_filefilesnoyesdata-access
termix_list_filesfilesyesnodata-access
termix_move_filefilesnonodata-access
termix_read_filefilesyesnodata-access
termix_rename_filefilesnonodata-access
termix_write_filefilesnonodata-access
termix_create_hosthostsnono-
termix_delete_hosthostsnoyes-
termix_disable_host_autostarthostsnono-
termix_enable_host_autostarthostsnono-
termix_get_hosthostsyesno-
termix_get_network_topologyhostsyesno-
termix_list_host_foldershostsyesno-
termix_list_host_tagshostsyesno-
termix_list_hostshostsyesno-
termix_update_hosthostsnono-
termix_get_host_metricsmetricsyesno-
termix_get_host_statusmetricsyesno-
termix_get_metrics_historymetricsyesno-
termix_get_proxmox_statsmetricsyesno-
termix_list_active_alertsmetricsyesno-
termix_list_host_statusesmetricsyesno-
termix_create_snippetsnippetsnono-
termix_delete_snippetsnippetsnoyes-
termix_get_snippetsnippetsyesno-
termix_list_snippetssnippetsyesno-
termix_run_snippetsnippetsnono-
termix_update_snippetsnippetsnono-
termix_get_preferencessystemyesno-
termix_get_system_infosystemyesno-
termix_list_api_keyssystemyesno-
termix_create_tunneltunnelsnonodata-access
termix_delete_tunneltunnelsnonodata-access
termix_get_tunneltunnelsyesno-
termix_list_tunnel_presetstunnelsyesno-
termix_list_tunnelstunnelsyesno-
termix_assign_roleusersnonoadmin
termix_get_userusersyesnoadmin
termix_list_credential_accessusersyesnoadmin
termix_list_folder_accessusersyesnoadmin
termix_list_rolesusersyesnoadmin
termix_list_usersusersyesnoadmin

Total: 78 tools.

Contributing

See CONTRIBUTING.md.

Security

See SECURITY.md for the threat model.

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.