Skip to main content
Glama

mcp-nutanix

client.go2.09 kB
package client import ( "github.com/nutanix-cloud-native/prism-go-client/environment" "github.com/nutanix-cloud-native/prism-go-client/environment/providers/local" "github.com/nutanix-cloud-native/prism-go-client/environment/providers/mcp" envtypes "github.com/nutanix-cloud-native/prism-go-client/environment/types" prismclientv3 "github.com/nutanix-cloud-native/prism-go-client/v3" prismclientv4 "github.com/nutanix-cloud-native/prism-go-client/v4" "k8s.io/klog" ) var ( prismClient *NutanixClient ) func Init(modelcontextclient mcp.ModelContextClient) { prismClient = &NutanixClient{ env: environment.NewEnvironment(local.NewProvider(), mcp.NewProvider(modelcontextclient)), v3ClientCache: prismclientv3.NewClientCache(), v4ClientCache: prismclientv4.NewClientCache(), } } func GetPrismClient() *NutanixClient { if prismClient == nil { panic("Prism client not initialized. Call Init() first.") } return prismClient } type NutanixClient struct { env envtypes.Environment v3ClientCache *prismclientv3.ClientCache v4ClientCache *prismclientv4.ClientCache } // GetV3Client returns the v3 client func (n *NutanixClient) V3() prismclientv3.Service { c, err := n.v3ClientCache.GetOrCreate(n) if err != nil { panic(err) } return c.V3 } // GetV4Client returns the v4 client func (n *NutanixClient) V4() *prismclientv4.Client { c, err := n.v4ClientCache.GetOrCreate(n) if err != nil { panic(err) } return c } // Key returns the constant client name // This implements the CachedClientParams interface of prism-go-client func (n *NutanixClient) Key() string { return "mcp-server" } // ManagementEndpoint returns the management endpoint of the Nutanix cluster // This implements the CachedClientParams interface of prism-go-client func (n *NutanixClient) ManagementEndpoint() envtypes.ManagementEndpoint { mgmtEndpoint, err := n.env.GetManagementEndpoint(envtypes.Topology{}) if err != nil { klog.Errorf("failed to get management endpoint: %s", err.Error()) return envtypes.ManagementEndpoint{} } return *mgmtEndpoint }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/thunderboltsid/mcp-nutanix'

If you have feedback or need assistance with the MCP directory API, please join our Discord server