@@ -132,14 +132,15 @@ fn embed_registry_catalog(root: &Path) {
132132 // No registry dir: write empty catalog
133133 fs:: write (
134134 & out_path,
135- r#"{"tools":[],"channels":[],"bundles":{"bundles":{}}}"# ,
135+ r#"{"tools":[],"channels":[],"mcp_servers":[]," bundles":{"bundles":{}}}"# ,
136136 )
137137 . unwrap ( ) ;
138138 return ;
139139 }
140140
141141 let mut tools = Vec :: new ( ) ;
142142 let mut channels = Vec :: new ( ) ;
143+ let mut mcp_servers = Vec :: new ( ) ;
143144
144145 // Collect tool manifests
145146 let tools_dir = registry_dir. join ( "tools" ) ;
@@ -153,6 +154,12 @@ fn embed_registry_catalog(root: &Path) {
153154 collect_json_files ( & channels_dir, & mut channels) ;
154155 }
155156
157+ // Collect MCP server manifests
158+ let mcp_servers_dir = registry_dir. join ( "mcp-servers" ) ;
159+ if mcp_servers_dir. is_dir ( ) {
160+ collect_json_files ( & mcp_servers_dir, & mut mcp_servers) ;
161+ }
162+
156163 // Read bundles
157164 let bundles_path = registry_dir. join ( "_bundles.json" ) ;
158165 let bundles_raw = if bundles_path. is_file ( ) {
@@ -163,9 +170,10 @@ fn embed_registry_catalog(root: &Path) {
163170
164171 // Build the combined JSON
165172 let catalog = format ! (
166- r#"{{"tools":[{}],"channels":[{}],"bundles":{}}}"# ,
173+ r#"{{"tools":[{}],"channels":[{}],"mcp_servers":[{}]," bundles":{}}}"# ,
167174 tools. join( "," ) ,
168175 channels. join( "," ) ,
176+ mcp_servers. join( "," ) ,
169177 bundles_raw,
170178 ) ;
171179
0 commit comments