giantswarm/mcp-giantswarm-apps
If you are the rightful owner of mcp-giantswarm-apps and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
An MCP server designed for managing Giant Swarm App Platform deployments, providing tools and resources for efficient app management.
app_list
List Giant Swarm apps with filtering options.
app_get
Get detailed information about a specific app.
app_create
Create a new Giant Swarm app.
app_update
Update an existing app.
app_delete
Delete an app.
catalog_list
List available app catalogs.
catalog_get
Get detailed catalog information.
catalog_refresh
Refresh catalog entries.
catalog_search
Search for apps across catalogs.
appcatalogentry_list
List apps from catalogs.
appcatalogentry_get
Get detailed app information.
appcatalogentry_versions
List available versions.
appcatalogentry_search
Search catalog entries.
config_get
Get app configuration.
config_create
Create new configuration.
config_update
Update configuration.
config_values
Get configuration values.
organization_list
List organizations.
organization_namespaces
List organization namespaces.
organization_info
Get namespace details.
organization_validate_access
Check access permissions.
cluster_list
List available workload clusters.
cluster_get
Get detailed cluster information.
cluster_apps
List apps deployed to a specific cluster.
health
Check server and connection health.
kubernetes_contexts
List available contexts.
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 (
kubectl
access)
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 for guidelines.
License
This project is licensed under the Apache License 2.0 - see the file for details.
Support
For issues and feature requests, please use the GitHub issue tracker.