Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/pyworkload/3x-ui-mcp/multi-nodenpx skills add pyworkload/3x-ui-mcp --skill multi-nodegit clone --depth 1 https://github.com/pyworkload/3x-ui-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/pyworkload/3x-ui-mcp/multi-node)<a href="https://agentmods.dev/skills/pyworkload/3x-ui-mcp/multi-node"><img src="https://agentmods.dev/badge/skills/pyworkload/3x-ui-mcp/multi-node.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00087 | $0.01416 |
| Opus 5 | $0.00044 | $0.00708 |
| Sonnet 5 | $0.00017 | $0.00283 |
| Haiku 4.5 | $0.00009 | $0.00142 |
Grade A, and why
multi-node scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 125 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Multi-node
A node is another 3x-ui panel this one drives: inbounds and clients are pushed to it, and its traffic and online state are pulled back. Most of these calls reach the node itself over the network, not just the local panel, so failures here are as often connectivity as configuration.
Node tools need panel v3.5.0+; reload_node_mtls_client needs v3.7.0+.
Adding a node, in the right order
- Probe before saving.
test_nodetakes the same connection parameters asadd_nodeand reports whether they work, without writing anything:
test_node address="node1.example" port=2053 scheme="https" api_token="…" tls_verify_mode="verify"
- Save it.
add_nodeprobes again as part of the write and refuses parameters it cannot reach, so a successful call means the link works. - See what it offers.
list_node_inbounds id=<id>lists the inbounds that exist on the node — the input for selective sync. - Choose the sync mode.
inbound_sync_mode="all"pushes everything;"selected"withinbound_tags=[…]pushes only the named tags. Selective sync is the right default for a mixed cluster, where one node is not meant to carry every customer.
allow_private_address must be set for a node on a private or loopback address —
otherwise the probe rejects it as unroutable, which is the intended protection
against pointing a node at yourself by accident.
TLS trust modes
tls_verify_mode decides what the master accepts from the node:
| Mode | Meaning | When |
|---|---|---|
verify |
Standard chain validation | The node has a real certificate for a real domain |
skip |
No validation at all | Never, outside a lab — it removes the only defence against interception |
pin |
The certificate must match a recorded fingerprint | Self-signed certificates, which is most private clusters |
mtls |
Both sides present certificates | The strongest option, and the one to grow into |
For pin, read the fingerprint from the node and store it in the node's
pinned_cert_sha256 (base64 SHA-256 of the leaf certificate):
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today First seen · 125 lines · 87 tokens per session scan A 049d27f717ad
multi-node is a skill published in the GitHub repository pyworkload/3x-ui-mcp (5 stars, last pushed 4d ago), licensed MIT. It adds 87 tokens to every session and 1,416 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-05.
Other skills, from other repositories
chainstack
Work with the Chainstack MCP server to manage blockchain nodes and projects. Use when deploying nodes, migrating to Chainstack from another RPC provider such as QuickNode or Alchemy, checking platform status, searching Chainstack docs, contacting the Chainstack team, or interacting with the Chainstack platform API via…
deploy
Build, deploy, verify, or roll back this server on the host. Use when asked to ship a change, rebuild a container, update nginx, or diagnose why the service is down. Covers the memory-capped build, the reload-not-restart rule, and the unhealthy-container failure mode.
publish-release
Releases a new McpOrchestrator version end to end — version bump PR, tag, and the automated deploy to GitHub Releases, NuGet, and the MCP Registry. Use when asked to release, publish, deploy, ship, or bump the version of McpOrchestrator.
cloudflare-management
Manage Cloudflare Workers, KV, R2, DNS, and cache via MCP. Use when the user asks to list zones, edit DNS records, purge cache, inspect Workers, read/write KV, or list R2 buckets on Cloudflare.
api-workers
Cloudflare Workers deployment using createWorkerHandler from @cyanheads/mcp-ts-core/worker. Covers the full handler signature, binding types, CloudflareBindings extensibility, runtime compatibility guards, and wrangler.toml requirements.
api-workers
Cloudflare Workers deployment using createWorkerHandler from @cyanheads/mcp-ts-core/worker. Covers the full handler signature, binding types, CloudflareBindings extensibility, runtime compatibility guards, and wrangler.toml requirements.