@@ -435,6 +435,28 @@ func parseCLIFlags() CLIFlags {
435435 return flags
436436}
437437
438+ func skabandMcpConfiguration (flags CLIFlags ) string {
439+ skabandaddr , err := skabandclient .LocalhostToDockerInternal (flags .skabandAddr )
440+ if err != nil {
441+ skabandaddr = flags .skabandAddr
442+ }
443+ config := mcp.ServerConfig {
444+ Name : "sketchdev" ,
445+ Type : "http" ,
446+ URL : skabandaddr + "/api/mcp" ,
447+ Headers : map [string ]string {
448+ "Session-Id" : flags .sessionID ,
449+ "Public-Key" : "env:SKETCH_PUB_KEY" ,
450+ "Session-Secret" : "env:SKETCH_MODEL_API_KEY" ,
451+ },
452+ }
453+ out , err := json .Marshal (& config )
454+ if err != nil {
455+ panic ("programming error" + err .Error ())
456+ }
457+ return string (out )
458+ }
459+
438460// runInHostMode handles execution on the host machine, which typically involves
439461// checking host requirements and launching a Docker container.
440462func runInHostMode (ctx context.Context , flags CLIFlags ) error {
@@ -534,28 +556,6 @@ func runInHostMode(ctx context.Context, flags CLIFlags) error {
534556 return nil
535557}
536558
537- func skabandMcpConfiguration (flags CLIFlags ) string {
538- skabandaddr , err := skabandclient .LocalhostToDockerInternal (flags .skabandAddr )
539- if err != nil {
540- skabandaddr = flags .skabandAddr
541- }
542- config := mcp.ServerConfig {
543- Name : "sketchdev" ,
544- Type : "http" ,
545- URL : skabandaddr + "/api/mcp" ,
546- Headers : map [string ]string {
547- "Session-Id" : flags .sessionID ,
548- "Public-Key" : "env:SKETCH_PUB_KEY" ,
549- "Session-Secret" : "env:SKETCH_MODEL_API_KEY" ,
550- },
551- }
552- out , err := json .Marshal (& config )
553- if err != nil {
554- panic ("programming error" + err .Error ())
555- }
556- return string (out )
557- }
558-
559559// runInContainerMode handles execution inside the Docker container.
560560// The inInsideSketch parameter indicates whether we're inside the sketch container
561561// with access to outside environment variables.
0 commit comments