MCP server for EdgescaleAI Cube operations
Project description
cube-mcp
MCP server for EdgescaleAI Cube management and Apollo deployments.
Architecture
cube-agent runs locally as an MCP server (via npx cube-mcp). It handles authentication, Docker builds, Helm chart packaging, and app proxy tunnels. Server-side operations (Kubernetes, Teleport, Apollo) are proxied to cube-cloud, a FastAPI backend hosted on AWS ECS.
Claude Code <--> cube-agent (local MCP) <--> cube-cloud (ECS) <--> Teleport / Apollo / K8s
Install
# Add to Claude Code
claude mcp add cube -- npx cube-mcp
Or run directly:
npx cube-mcp # via Node (calls uvx under the hood)
uvx cube-mcp # via uv directly
Getting Started
You: "Log me in" → agent_login_browser (opens browser for Cognito login)
You: "Connect to staging" → cube_cluster_login (merges kubeconfig)
You: "Show Cube status" → cube_status
Tools
Auth
| Tool | Description |
|---|---|
agent_login_browser |
Log in via browser (Cognito) |
agent_login |
Log in with an API key |
agent_logout |
Remove stored API key |
agent_status |
Check auth and connectivity |
Kubernetes
| Tool | Description |
|---|---|
cube_list |
List available Cube clusters |
cube_status |
Get node status for a cluster |
cube_cluster_login |
Get kubeconfig for a cluster (merges into ~/.kube/config) |
kubectl_exec |
Run kubectl commands (server-side) |
Apps
| Tool | Description |
|---|---|
app_list |
List Teleport apps |
app_proxy |
Start local proxy tunnel to an app |
app_proxy_stop |
Stop running proxies |
app_proxy_status |
Show proxy status |
Build & Registry
| Tool | Description |
|---|---|
build_and_publish_to_apollo |
Build Docker image, package chart, push to ACR, publish manifest |
acr_get_token |
Get Apollo Container Registry token |
apollo_publish_manifest |
Publish a manifest YAML |
Apollo Environments
| Tool | Description |
|---|---|
list_environments |
List/search Apollo environments |
create_environment |
Create a new environment with control plane |
replicate_environment |
Clone modules, entities, configs, and secrets |
delete_environment |
Delete an environment |
install_entity |
Install a Helm chart entity |
uninstall_entity |
Uninstall an entity |
entity_health |
Get entity health and activity status |
plan_details |
Get plan tasks, events, and error logs |
update_entity_config |
Update entity config overrides |
enforce_entity_config |
Force re-apply entity configuration |
reset_environment_agents |
Reset environment agents |
Apollo Modules
| Tool | Description |
|---|---|
install_module |
Install a module on an environment |
uninstall_module |
Uninstall a module |
list_modules |
List modules in an environment |
update_module_variables |
Update module variables |
Apollo Secrets
| Tool | Description |
|---|---|
create_secret |
Create a secret on an environment |
update_secret |
Update a secret value |
Apollo Products & Release Channels
| Tool | Description |
|---|---|
list_products |
List available products |
compare_product_versions |
Compare versions of a product |
list_release_channels |
List release channels |
get_product_releases |
Get releases for a product |
add_product_to_release_channel |
Add a product to a release channel |
remove_product_from_release_channel |
Remove a product from a release channel |
set_label_on_product |
Set a label on a product |
remove_label_from_product |
Remove a label from a product |
Apollo Change Requests
| Tool | Description |
|---|---|
list_change_requests |
List pending change requests |
review_change_request |
Approve or reject a change request |
Local Development
# Install dependencies
uv sync --extra dev
uv pip install -e packages/cube-common -e packages/cube-cloud -e packages/cube-agent
# Run tests
uv run pytest packages/ -v
# Run cube-agent locally (for debugging)
uv run cube-agent
To test with Claude Code, point the MCP server at your local code:
claude mcp add cube-local -- uv run --directory /path/to/cube-mcp cube-agent
Reload after changes with /mcp in Claude Code.
Contributing
- Create a branch
- Make changes
- Run
uv run pytest packages/ -v - Push and open a PR — tests run automatically
- Merge to main — auto-publishes to PyPI and npm, auto-deploys to ECS
Admin
See docs/admin.md for user management, RBAC, and profile configuration.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cube_mcp-0.3.9.tar.gz.
File metadata
- Download URL: cube_mcp-0.3.9.tar.gz
- Upload date:
- Size: 3.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
31a3f8060bdfecde5ba7dc240c1af718728229aaaa7b00b43e2b64b1c83eff5f
|
|
| MD5 |
24f186154ac5d41c74d205a78dfa8937
|
|
| BLAKE2b-256 |
ca5dfdfcf09d0d6111fe89f5eceba1d7b1fb57daa84261b9d0bf89c4c4f966f8
|
File details
Details for the file cube_mcp-0.3.9-py3-none-any.whl.
File metadata
- Download URL: cube_mcp-0.3.9-py3-none-any.whl
- Upload date:
- Size: 30.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5fb13d8f5bdacbd76c044131467bea6e80a799cfd786e1e8483d78428786c39b
|
|
| MD5 |
d74c9dba662f176779bd14dd87d4af1b
|
|
| BLAKE2b-256 |
2caa954ad347f0a301d9bb5a1e45be8ce20dce7047ba27a5e1f322ce6aa1c34b
|