MCPcopy Create free account
hub / github.com/VersusControl/devops-ai-guidelines / NewServer

Function NewServer

02-mcp-for-devops/code/06/pkg/mcp/server.go:26–53  ·  view source on GitHub ↗

NewServer creates a new MCP server instance with proper MCP protocol implementation

(cfg *config.Config, k8sClient *k8s.Client)

Source from the content-addressed store, hash-verified

24
25// NewServer creates a new MCP server instance with proper MCP protocol implementation
26func NewServer(cfg *config.Config, k8sClient *k8s.Client) *Server {
27 logger := logging.NewLogger("info", "text")
28
29 // Create MCP server
30 mcpServer := server.NewMCPServer(
31 "k8s-mcp-server",
32 "1.0.0",
33 server.WithResourceCapabilities(true, true),
34 server.WithToolCapabilities(true),
35 )
36
37 s := &Server{
38 config: cfg,
39 k8sClient: k8sClient,
40 logger: logger,
41 mcpServer: mcpServer,
42 toolExecutor: tools.NewToolExecutor(k8sClient, logger),
43 formatter: NewResourceFormatter(),
44 }
45
46 // Register MCP resources
47 s.registerResources()
48
49 // Register MCP tools
50 s.registerTools()
51
52 return s
53}
54
55// Start starts the MCP server with stdio transport
56func (s *Server) Start(ctx context.Context) error {

Callers

nothing calls this directly

Calls 3

registerResourcesMethod · 0.95
registerToolsMethod · 0.95
NewResourceFormatterFunction · 0.70

Tested by

no test coverage detected