Giant Swarm App Platform
A server for managing Giant Swarm App Platform deployments using Kubernetes credentials.
MCP Server for Giant Swarm App Platform
An MCP (Model Context Protocol) server that provides tools and resources for managing Giant Swarm App Platform deployments.
Features
- App Management: Create, update, list, and delete Giant Swarm apps
- Catalog Support: Browse and search app catalogs and available app versions
- Configuration Management: Handle app configurations via ConfigMaps and Secrets
- Multi-namespace Support: Work with organization-based namespaces
- CAPI Integration: Support for workload cluster app deployments
- Prompts: Interactive guides for common operations
Prerequisites
- Go 1.21 or later
- Access to a Giant Swarm management cluster
- Kubernetes credentials configured (
kubectlaccess)
Installation
Prerequisites
- Go 1.21 or later
- Access to a Giant Swarm management cluster
- Valid kubeconfig for authentication
Building from Source
# Clone the repository
git clone https://github.com/giantswarm/mcp-giantswarm-apps.git
cd mcp-giantswarm-apps
# Install dependencies
make deps
# Build the server
make build
# Install to $GOPATH/bin
make install
Usage
Running the Server
The server runs using stdio transport by default:
# Run directly
./build/mcp-giantswarm-apps
# Or if installed
mcp-giantswarm-apps
Configuration
The server uses your current kubeconfig context by default. You can specify a different context:
export KUBECONFIG=/path/to/kubeconfig
mcp-giantswarm-apps
Integration with AI Assistants
To use with Claude Desktop or other MCP-compatible clients, add to your configuration:
{
"mcpServers": {
"giantswarm-apps": {
"command": "mcp-giantswarm-apps",
"args": []
}
}
}
Available Tools
App Management
app_list- List Giant Swarm apps with filtering optionsapp_get- Get detailed information about a specific appapp_create- Create a new Giant Swarm appapp_update- Update an existing appapp_delete- Delete an app
Catalog Management
catalog_list- List available app catalogscatalog_get- Get detailed catalog informationcatalog_refresh- Refresh catalog entriescatalog_search- Search for apps across catalogs
App Catalog Entries
appcatalogentry_list- List apps from catalogsappcatalogentry_get- Get detailed app informationappcatalogentry_versions- List available versionsappcatalogentry_search- Search catalog entries
Configuration Management
config_get- Get app configurationconfig_create- Create new configurationconfig_update- Update configurationconfig_values- Get configuration values
Organization Management
organization_list- List organizationsorganization_namespaces- List organization namespacesorganization_info- Get namespace detailsorganization_validate_access- Check access permissions
Cluster Management (CAPI)
cluster_list- List available workload clusterscluster_get- Get detailed cluster informationcluster_apps- List apps deployed to a specific cluster
System Tools
health- Check server and connection healthkubernetes_contexts- List available contexts
Available Resources
The server exposes various resources:
app://{namespace}/{name}- App details and statuscatalog://{name}- Catalog informationconfig://{namespace}/{app}/values- App configuration
Usage Examples
List workload clusters
# List all clusters
mcp cluster_list
# List clusters for an organization
mcp cluster_list --organization giantswarm
# List only ready clusters
mcp cluster_list --ready-only
Deploy app to workload cluster
# Deploy app to a specific workload cluster
mcp app_create \
--name nginx-ingress \
--namespace org-giantswarm \
--catalog giantswarm \
--app nginx-ingress-controller \
--version 2.1.0 \
--cluster prod-cluster
List apps in a workload cluster
# List all apps in a specific cluster
mcp cluster_apps --cluster prod-cluster --organization giantswarm
Development
Project Structure
.
├── cmd/mcp-server/ # Main server entry point
├── pkg/
│ ├── app/ # App management logic
│ ├── catalog/ # Catalog handling
│ └── config/ # Configuration management
├── internal/
│ └── k8s/ # Kubernetes client utilities
└── Makefile # Build automation
Running Tests
make test
Contributing
Please see CONTRIBUTING.md for guidelines.
License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Support
For issues and feature requests, please use the GitHub issue tracker.
Related Servers
Image Analysis Server
Analyzes images using the GPT-4o-mini model via the OpenAI API.
Shopify MCP Server
Interact with Shopify store data such as products, customers, and orders using the GraphQL API.
MultiversX MCP Server
Interact with the MultiversX blockchain for wallet creation, balance fetching, and token management.
Remote MCP Server (Authless)
An authless remote MCP server deployable on Cloudflare Workers.
CMP MCP Server
An MCP server for CMP API integration, built to run on Cloudflare Workers.
MCP Payment Server
An MCP server for processing payments using stdio transport, configured via environment variables.
Meraki Magic MCP
A Python-based MCP server for Cisco's Meraki Dashboard, providing tools to query the API for discovering, monitoring, and managing your Meraki environment.
Vault MCP Server
An MCP server for interacting with the HashiCorp Vault secrets management tool.
Remote MCP Server on Cloudflare
A remote MCP server running on Cloudflare Workers with OAuth login support.
MCP Prometheus
Access Prometheus metrics and queries through standardized MCP interfaces.