22//!
33//! IPC commands for generating MCP configuration files for clients.
44
5- use mcpmux_core:: { ConfigExporter , ConfigFormat , ResolvedTransport , ResolvedServer , TransportConfig } ;
5+ use mcpmux_core:: {
6+ ConfigExporter , ConfigFormat , ResolvedServer , ResolvedTransport , TransportConfig ,
7+ } ;
68use serde:: { Deserialize , Serialize } ;
79use std:: collections:: HashMap ;
810use std:: path:: PathBuf ;
@@ -78,27 +80,29 @@ async fn build_resolved_servers(
7880 if let Some ( entry) = inst. get_definition ( ) {
7981 // Build resolved transport from registry transport + input values
8082 let transport = match & entry. transport {
81- TransportConfig :: Stdio { command, args, env, .. } => {
83+ TransportConfig :: Stdio {
84+ command, args, env, ..
85+ } => {
8286 // Resolve placeholders in command
8387 let resolved_command = resolve_placeholders ( command, & inst. input_values ) ;
84-
88+
8589 // Resolve placeholders in args
8690 let mut resolved_args: Vec < String > = args
8791 . iter ( )
8892 . map ( |arg| resolve_placeholders ( arg, & inst. input_values ) )
8993 . collect ( ) ;
90-
94+
9195 // Append user's extra args
9296 resolved_args. extend ( inst. args_append . clone ( ) ) ;
9397
9498 // Build env from registry + input values + env_overrides
9599 let mut resolved_env = HashMap :: new ( ) ;
96-
100+
97101 // 1. Start with registry env
98102 for ( k, v) in env {
99103 resolved_env. insert ( k. clone ( ) , resolve_placeholders ( v, & inst. input_values ) ) ;
100104 }
101-
105+
102106 // 2. Add input values (for api_key type servers)
103107 if !mask_credentials {
104108 resolved_env. extend ( inst. input_values . clone ( ) ) ;
@@ -107,7 +111,7 @@ async fn build_resolved_servers(
107111 resolved_env. insert ( k. clone ( ) , "***MASKED***" . to_string ( ) ) ;
108112 }
109113 }
110-
114+
111115 // 3. Apply user's env overrides
112116 resolved_env. extend ( inst. env_overrides . clone ( ) ) ;
113117
@@ -119,16 +123,16 @@ async fn build_resolved_servers(
119123 }
120124 TransportConfig :: Http { url, headers, .. } => {
121125 let resolved_url = resolve_placeholders ( url, & inst. input_values ) ;
122-
126+
123127 // Resolve headers from registry
124128 let mut resolved_headers: HashMap < String , String > = headers
125129 . iter ( )
126130 . map ( |( k, v) | ( k. clone ( ) , resolve_placeholders ( v, & inst. input_values ) ) )
127131 . collect ( ) ;
128-
132+
129133 // Add user's extra headers
130134 resolved_headers. extend ( inst. extra_headers . clone ( ) ) ;
131-
135+
132136 ResolvedTransport :: Http {
133137 url : resolved_url,
134138 headers : resolved_headers,
0 commit comments