Skip to main content
Glama

enclave_tunnel

Start, stop, or list background TCP port forwards and SOCKS5/HTTP proxies over RdpVfsTransport to route traffic to isolated target nodes.

Instructions

Dynamically start, stop, or list background TCP port forwards or universal SOCKS5/HTTP proxies over RdpVfsTransport.

Input Schema

NameRequiredDescriptionDefault
modeNo'tcp' forwards a single port to target_host:target_port; 'proxy' starts a universal SOCKS5/SOCKS4a/HTTP CONNECT proxy.tcp
actionYesAction to perform ('start', 'stop', or 'list').
local_portNoLocal TCP port on 127.0.0.1 (0 = auto-assign on 'start', or stop all tunnels on 'stop').
target_hostNoTargetNode alias or IP/FQDN (required when action='start' and mode='tcp').
target_portNoRemote TCP port (required when action='start' and mode='tcp').

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are supplied, so the description carries the full disclosure burden. 'Background' implies long-lived state, but the description never says whether tunnels survive the session, what permissions or transport state are required, whether starting a port that is already bound errors, or what 'stop' does to in-flight connections. For a stateful networking primitive this is a substantial gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler; the action verbs and the resource types are each stated once and carry all the needed weight.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description should say what 'list' returns (tunnel IDs, ports, targets) and how a started tunnel is referenced later for 'stop'. It covers the operations but leaves the observable behavior of the tool undocumented.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both enums and conditional requirements (target_host/target_port required only when action='start' and mode='tcp') fully documented in the schema itself. The description adds essentially nothing beyond that, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names specific verbs (start, stop, list) and specific resources (TCP port forwards, SOCKS5/HTTP proxies) plus the transport used (RdpVfsTransport). It is immediately clear what the tool does. It stops short of differentiating from siblings such as node_http_request or node_transfer, which an agent might plausibly confuse with a proxy/forwarding tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use or when-not-to-use guidance, no prerequisites (e.g. an active RDP/VFS session), and no warning about cleanup or persistence of background tunnels. The word 'Dynamically' hints at runtime lifecycle but does not tell the agent under what circumstances to pick this over a direct request tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.