Skip to main content
Glama

p2p_transfer_start

Destructive

Recommended only when large files need to be transferred between the local machine (the Agent execution environment) and a connected remote computer. Start the remote p2p-cli bootstrap and wait only until it registers for negotiation. Returns private shell and PowerShell bootstrap scripts: execute the one matching the Agent execution environment to download and start the local component. Bootstrap output includes executable: use that absolute path for status, cp and stop locally. File bytes use a direct encrypted peer connection, never this MCP service. Repeated calls reuse the active connection for this client; stop the existing P2P connection before starting a new one.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "client_token": "<client_token>"
    },
    "name": "p2p_transfer_start"
  }
}

Input Schema

NameRequiredDescriptionDefault
client_idNoSix lowercase letters or digits from list_client. Required for execute_command, session_read and session_control on multi-device tokens, including existing sessions. Session-list filtering is optional.
client_tokenYesControl credential in token:key format, required with management access (including stdio and no-password mode). Scoped control bearer access implicitly selects its own token.

Output Schema

NameRequiredDescriptionDefault
stateYesCurrent P2P initialization state; waiting_for_agent means the remote registered, not that P2P connected.
shell_scriptYesPrivate POSIX shell bootstrap for the Agent environment on macOS or Linux.
connection_idYesP2P connection identifier.
local_client_idYesLocal p2p-cli identifier used in CLIENT:PATH copy operands.
remote_client_idYesRemote p2p-cli identifier used in CLIENT:PATH copy operands.
powershell_scriptYesPrivate PowerShell bootstrap for the Agent environment on Windows.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / client_id / description
      Previous value: -"Six lowercase letters or digits from list_clients, used to select or filter devices. For multi-device tokens it is required when a specific device must be selected and no existing session_id identifies it. Session-list filtering is optional."New value: +"Six lowercase letters or digits from list_client. Required for execute_command, session_read and session_control on multi-device tokens, including existing sessions. Session-list filtering is optional."
    • changedInput schema / properties / client_token / description
      Previous value: -"Target client connection token, required with management access (including stdio and no-password mode). Device-scoped bearer access implicitly selects its own token."New value: +"Control credential in token:key format, required with management access (including stdio and no-password mode). Scoped control bearer access implicitly selects its own token."
  2. Changed1 schema field changed
    • changedInput schema / properties / client_id / description
      Previous value: -"Six lowercase letters or digits from list_clients. Required for multi-device tokens, even when only one device is online; optional for single-device tokens."New value: +"Six lowercase letters or digits from list_clients, used to select or filter devices. For multi-device tokens it is required when a specific device must be selected and no existing session_id identifies it. Session-list filtering is optional."
  3. Added

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the annotations, the description discloses the bootstrap handshake process, what scripts are returned, how to execute them, where the executable path appears, that file bytes bypass the MCP service via direct encrypted peer connection, and that repeated calls reuse the active connection. This is rich, actionable behavioral context that goes well beyond what the annotations alone convey.

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?

The description is front-loaded with the use recommendation and then proceeds in logical operational order. Every sentence supplies distinct, necessary information: bootstrap behavior, script execution, executable path, transport security, and connection reuse. No filler or repetition.

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

Completeness4/5

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

The description covers the key mechanics of a complex bootstrap-and-transfer tool: what it starts, what it returns, how to execute the bootstrap, where the executable path appears, the encrypted peer transport, and connection reuse semantics. An output schema exists, so return values need not be explained. It does not describe failure modes or error handling, which keeps it at a 4.

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%, so both client_id and client_token are fully documented in the schema. The description adds only indirect meaning by mentioning 'for this client' and 'existing sessions,' but does not explain parameter formats or scoping beyond what the schema provides. Baseline 3 is appropriate when the schema carries the parameter documentation.

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

Purpose5/5

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

The description states a specific verb and resource: 'Start the remote p2p-cli bootstrap and wait only until it registers for negotiation.' It also immediately frames the intended scenario (large file transfer between local and remote machine), making it clearly distinguishable from sibling tools that handle client management, command execution, or session control.

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

Usage Guidelines4/5

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

The description gives a clear condition for use: 'Recommended only when large files need to be transferred between the local machine ... and a connected remote computer.' It also adds operational guidance (execute the matching bootstrap script, use the executable path locally, stop existing connection before starting a new one). It does not name explicit alternative tools, which keeps it from a 5.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources