mirror of
https://github.com/Ed1s0nZ/CyberStrikeAI.git
synced 2026-03-31 00:09:29 +02:00
58 lines
1.2 KiB
Go
58 lines
1.2 KiB
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
|
|
"cyberstrike-ai/internal/config"
|
|
)
|
|
|
|
func main() {
|
|
if len(os.Args) < 2 {
|
|
fmt.Println("Usage: go run cmd/test-config/main.go <config.yaml>")
|
|
os.Exit(1)
|
|
}
|
|
|
|
configPath := os.Args[1]
|
|
cfg, err := config.Load(configPath)
|
|
if err != nil {
|
|
fmt.Printf("Error loading config: %v\n", err)
|
|
os.Exit(1)
|
|
}
|
|
|
|
if cfg.ExternalMCP.Servers == nil {
|
|
fmt.Println("No external MCP servers configured")
|
|
os.Exit(0)
|
|
}
|
|
|
|
fmt.Printf("Found %d external MCP server(s):\n\n", len(cfg.ExternalMCP.Servers))
|
|
|
|
for name, srv := range cfg.ExternalMCP.Servers {
|
|
fmt.Printf("Name: %s\n", name)
|
|
fmt.Printf(" Transport: %s\n", getTransport(srv))
|
|
fmt.Printf(" Command: %s\n", srv.Command)
|
|
if len(srv.Args) > 0 {
|
|
fmt.Printf(" Args: %v\n", srv.Args)
|
|
}
|
|
fmt.Printf(" URL: %s\n", srv.URL)
|
|
fmt.Printf(" Description: %s\n", srv.Description)
|
|
fmt.Printf(" Timeout: %d seconds\n", srv.Timeout)
|
|
fmt.Printf(" Enabled: %v\n", srv.Enabled)
|
|
fmt.Printf(" Disabled: %v\n", srv.Disabled)
|
|
fmt.Println()
|
|
}
|
|
}
|
|
|
|
func getTransport(srv config.ExternalMCPServerConfig) string {
|
|
if srv.Transport != "" {
|
|
return srv.Transport
|
|
}
|
|
if srv.Command != "" {
|
|
return "stdio"
|
|
}
|
|
if srv.URL != "" {
|
|
return "http"
|
|
}
|
|
return "unknown"
|
|
}
|