MCP Nutanix
An MCP server enabling LLM access to Nutanix Prism Central APIs.
Key Features
Use Cases
README
MCP Nutanix
A Model Context Protocol (MCP) server for interacting with Nutanix Prism Central APIs through Large Language Models (LLMs).
⚠️ Disclaimer
THIS IS AN EXPERIMENTAL PROJECT
This project was created as a personal project to explore the capabilities of the Model Context Protocol frameworks in Go. It is:
- NOT an official Nutanix product or tool
- NOT supported, endorsed, or maintained by Nutanix
- NOT suitable for production environments
- PROVIDED AS-IS with no warranties or guarantees
USE AT YOUR OWN RISK: The author takes no responsibility for any issues, damages, or outages that may result from using this code.
Overview
This MCP server allows LLMs to interact with Nutanix Prism Central by:
- Connecting to a Prism Central instance with user credentials
- Listing various resources (VMs, Clusters, Hosts, etc.)
- Retrieving specific resource details via URI-based access
The implementation uses the Prism Go Client to communicate with Prism Central and the MCP Go library to implement the Model Context Protocol.
Getting Started
Prerequisites
- Go 1.23 or higher
- Access to a Nutanix Prism Central instance
- Tools like
makeandgo fmtfor building
Building
# Clone the repository
git clone https://github.com/thunderboltsid/mcp-nutanix.git
cd mcp-nutanix
# Build the MCP server
make build
Credential Configuration
The server supports two credential methods:
- Interactive credentials (default) - Works with Claude via MCP prompts
- Static credentials - Required for tools like Cursor that don't support interactive prompts
MCP Client Configuration
To use this server with MCP clients, you need to configure the client to connect to the server.
Claude Desktop/Code
Create or update ~/.anthropic/claude_desktop.json:
{
"mcpServers": {
"nutanix": {
"command": "/path/to/mcp-nutanix"
}
}
}
Claude will prompt you for credentials when first using the server.
Cursor
For Cursor, you need to provide static credentials via environment variables since it doesn't support interactive prompts.
Create or update ~/.cursor/mcp.json:
{
"mcpServers": {
"nutanix": {
"command": "/path/to/mcp-nutanix",
"env": {
"NUTANIX_ENDPOINT": "your-prism-central-ip-or-hostname",
"NUTANIX_USERNAME": "your-username",
"NUTANIX_PASSWORD": "your-password",
"NUTANIX_INSECURE": "true"
}
}
}
}
Environment Variables:
NUTANIX_ENDPOINT- Prism Central IP or hostname (required)NUTANIX_USERNAME- API username (required)NUTANIX_PASSWORD- API password (required)NUTANIX_INSECURE- Set to "true" for self-signed certificates (optional)
Other MCP Clients
This server follows the standard MCP protocol and should work with any MCP client that supports stdio transport. Refer to your client's documentation for configuration instructions.
Usage
Once the MCP server is configured with your client and connected to your Prism Central instance, LLMs can interact with it through the MCP protocol.
Resource Listing
To list resources, use the appropriate tool:
vms
clusters
hosts
images
subnets
The LLM will receive a JSON list of resources that it can parse and analyze.
Resource Access
To access a specific resource, use a resource URI:
vm://{uuid}
cluster://{uuid}
host://{uuid}
The LLM will receive detailed JSON information about the specific resource.
Development
Project Structure
mcp-nutanix/
├── bin/ # Compiled binaries
├── internal/ # Internal packages
│ ├── client/ # Prism Central client handling
│ ├── codegen/ # Code generation utilities
│ └── json/ # JSON helpers
├── pkg/ # components
│ ├── prompts/ # MCP prompt implementations
│ ├── resources/ # Resource handlers
│ └── tools/ # Tool handlers
└── Makefile # Build and utility commands
Code Generation
The project uses code generation to create resource and tool handlers. To update these:
make generate
Limitations
- Response size is limited by the MCP protocol
- Some resources with large response sizes may cause errors
- No pagination support in the current implementation
- Only supports read operations, no create/update/delete
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Nutanix for creating the Prism API
- Mark3Labs for the MCP Go library
- Nutanix Cloud Native for the Prism Go Client
Contributing
This is an experimental project with no formal contribution process. Feel free to create issues or pull requests.
Star History
Repository Owner
User
Repository Details
Programming Languages
Tags
Join Our Newsletter
Stay updated with the latest AI tools, news, and offers by subscribing to our weekly newsletter.
Related MCPs
Discover similar Model Context Protocol servers
APISIX Model Context Protocol Server
Bridge LLMs with APISIX for natural language API management.
APISIX Model Context Protocol (MCP) Server enables large language models to interact with and manage APISIX resources via natural language commands. It provides a standardized protocol for connecting AI clients like Claude, Cursor, and Copilot to the APISIX Admin API. The server supports a range of operations including CRUD for routes, services, upstreams, plugins, security configurations, and more. Installation is streamlined via Smithery, npm, or direct source setup with customizable environment variables.
- ⭐ 29
- MCP
- api7/apisix-mcp
Teamwork MCP Server
Seamless Teamwork.com integration for Large Language Models via the Model Context Protocol
Teamwork MCP Server is an implementation of the Model Context Protocol (MCP) that enables Large Language Models to interact securely and programmatically with Teamwork.com. It offers standardized interfaces, including HTTP and STDIO, allowing AI agents to perform various project management operations. The server supports multiple authentication methods, an extensible toolset architecture, and is designed for production deployments. It provides read-only capability for safe integrations and robust observability features.
- ⭐ 11
- MCP
- Teamwork/mcp
Neovim MCP Server
Connect AI assistants to Neovim via the Model Context Protocol.
Neovim MCP Server enables seamless integration between Neovim instances and AI assistants by implementing the Model Context Protocol (MCP). It allows for multi-connection management, supports both stdio and HTTP server transport modes, and provides access to structured diagnostic information via URI schemes. With LSP integration, plugin support, and an extensible tool system, it facilitates advanced interaction with Neovim for context-aware AI workflows.
- ⭐ 20
- MCP
- linw1995/nvim-mcp
Notion MCP Server
Enable LLMs to interact with Notion using the Model Context Protocol.
Notion MCP Server allows large language models to interface with Notion workspaces through a Model Context Protocol server, supporting both data retrieval and editing capabilities. It includes experimental Markdown conversion to optimize token usage for more efficient communication with LLMs. The server can be configured with environment variables and controlled for specific tool access. Integration with applications like Claude Desktop is supported for seamless automation.
- ⭐ 834
- MCP
- suekou/mcp-notion-server
CircleCI MCP Server
Enable LLM-driven automation for CircleCI with the Model Context Protocol.
CircleCI MCP Server is an implementation of the Model Context Protocol (MCP) designed to bridge CircleCI with large language models and AI assistants. It supports integration with tools like Cursor IDE, Windsurf, Copilot, and VS Code, allowing users to interact with CircleCI using natural language. The server can be deployed locally via NPX or Docker and remotely, making CircleCI workflows accessible and manageable through standardized protocol operations.
- ⭐ 69
- MCP
- CircleCI-Public/mcp-server-circleci
Firefly MCP Server
Seamless resource discovery and codification for Cloud and SaaS with Model Context Protocol integration.
Firefly MCP Server is a TypeScript-based server implementing the Model Context Protocol to enable integration with the Firefly platform for discovering and managing resources across Cloud and SaaS accounts. It supports secure authentication, resource codification into infrastructure as code, and easy integration with tools such as Claude and Cursor. The server can be configured via environment variables or command line and communicates using standardized MCP interfaces. Its features facilitate automation and codification workflows for cloud resource management.
- ⭐ 15
- MCP
- gofireflyio/firefly-mcp
Didn't find tool you were looking for?