pub struct HarnessMcpLaunchV1 {
pub server_name: String,
pub args: Vec<String>,
pub endpoint_env: String,
pub token_env: String,
pub program_env: String,
pub trace: Option<HarnessMcpLaunchTraceV1>,
pub scrub_env: Vec<String>,
}Expand description
How the node exposes a reserved harness-MCP door to the provider session it spawns – every name in it is the CALLER’s, never the node’s.
The node owns the mechanism (a per-reservation local endpoint, a token, a reviewed helper program) and fills the three values into the environment variables the caller names; the caller decides what the MCP server is called in the provider’s configuration, which argv the helper program gets, and which stale variables to erase from the provider’s environment.
Fields§
§server_name: StringName of the MCP server entry in the provider’s configuration.
args: Vec<String>Arguments the helper program is started with.
endpoint_env: StringEnvironment variable that receives the local endpoint path.
token_env: StringEnvironment variable that receives the local token.
program_env: StringEnvironment variable that receives the helper program path.
trace: Option<HarnessMcpLaunchTraceV1>Optional trace opt-in.
scrub_env: Vec<String>Environment variables erased from the provider’s environment.
Implementations§
Source§impl HarnessMcpLaunchV1
impl HarnessMcpLaunchV1
Sourcepub fn validate(&self) -> Result<(), HarnessMcpContractError>
pub fn validate(&self) -> Result<(), HarnessMcpContractError>
Checks every bound and that the three value-receiving names (plus the trace name) are distinct and none of them is also scrubbed.