cube-mcp 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +57 -0
- package/bin/cube-mcp.js +45 -0
- package/package.json +27 -0
package/README.md
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# cube-mcp
|
|
2
|
+
|
|
3
|
+
MCP (Model Context Protocol) server for EdgescaleAI Cube cluster management and Apollo deployments.
|
|
4
|
+
|
|
5
|
+
## Quick Start
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Run directly with npx
|
|
9
|
+
npx cube-mcp
|
|
10
|
+
|
|
11
|
+
# Or install globally
|
|
12
|
+
npm install -g cube-mcp
|
|
13
|
+
cube-mcp
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Register with Claude Code
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
claude mcp add cube -- npx cube-mcp
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Requirements
|
|
23
|
+
|
|
24
|
+
This package requires either `uv` or `pipx` to run the Python backend:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
# Install uv (recommended)
|
|
28
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
29
|
+
|
|
30
|
+
# Or install pipx
|
|
31
|
+
brew install pipx # macOS
|
|
32
|
+
pip install pipx # other
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Available Tools
|
|
36
|
+
|
|
37
|
+
Once registered with Claude Code, you can use these tools:
|
|
38
|
+
|
|
39
|
+
- **cube_login** - Authenticate to a Cube cluster via Teleport SSO
|
|
40
|
+
- **cube_list** - List available Cube clusters
|
|
41
|
+
- **cube_status** - Get Cube node status
|
|
42
|
+
- **acr_login** - Login to Apollo Container Registry
|
|
43
|
+
- **build_and_publish_to_apollo** - Build and publish your app to Apollo
|
|
44
|
+
|
|
45
|
+
## Environment Variables
|
|
46
|
+
|
|
47
|
+
For Apollo operations, set these in your shell:
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
export APOLLO_CLIENT="<your-client-id>"
|
|
51
|
+
export APOLLO_SECRET="<your-client-secret>"
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Links
|
|
55
|
+
|
|
56
|
+
- [GitHub Repository](https://github.com/edgescaleai/cube-mcp)
|
|
57
|
+
- [PyPI Package](https://pypi.org/project/cube-mcp/)
|
package/bin/cube-mcp.js
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
const { spawnSync } = require('child_process');
|
|
4
|
+
|
|
5
|
+
// Try uvx first (fastest), then pipx as fallback
|
|
6
|
+
const runners = [
|
|
7
|
+
{ cmd: 'uvx', args: ['cube-mcp'] },
|
|
8
|
+
{ cmd: 'pipx', args: ['run', 'cube-mcp'] },
|
|
9
|
+
];
|
|
10
|
+
|
|
11
|
+
for (const { cmd, args } of runners) {
|
|
12
|
+
const result = spawnSync(cmd, args, {
|
|
13
|
+
stdio: 'inherit',
|
|
14
|
+
shell: process.platform === 'win32',
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
// If command was found (even if it failed), exit with its status
|
|
18
|
+
if (result.error?.code !== 'ENOENT') {
|
|
19
|
+
process.exit(result.status || 0);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// Neither runner found - show installation instructions
|
|
24
|
+
console.error(`
|
|
25
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
26
|
+
cube-mcp requires 'uv' or 'pipx' to run Python packages.
|
|
27
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
28
|
+
|
|
29
|
+
Install uv (recommended - fast Python package manager):
|
|
30
|
+
|
|
31
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
32
|
+
|
|
33
|
+
Or install pipx:
|
|
34
|
+
|
|
35
|
+
macOS: brew install pipx && pipx ensurepath
|
|
36
|
+
Linux: pip install --user pipx && pipx ensurepath
|
|
37
|
+
Windows: pip install pipx
|
|
38
|
+
|
|
39
|
+
Then restart your terminal and try again:
|
|
40
|
+
|
|
41
|
+
npx cube-mcp
|
|
42
|
+
|
|
43
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
44
|
+
`);
|
|
45
|
+
process.exit(1);
|
package/package.json
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "cube-mcp",
|
|
3
|
+
"version": "0.3.1",
|
|
4
|
+
"description": "MCP server for EdgescaleAI Cube cluster management and Apollo deployments",
|
|
5
|
+
"bin": {
|
|
6
|
+
"cube-mcp": "./bin/cube-mcp.js"
|
|
7
|
+
},
|
|
8
|
+
"keywords": [
|
|
9
|
+
"mcp",
|
|
10
|
+
"model-context-protocol",
|
|
11
|
+
"cube",
|
|
12
|
+
"edgescale",
|
|
13
|
+
"kubernetes",
|
|
14
|
+
"helm",
|
|
15
|
+
"apollo",
|
|
16
|
+
"claude"
|
|
17
|
+
],
|
|
18
|
+
"author": "EdgescaleAI",
|
|
19
|
+
"license": "MIT",
|
|
20
|
+
"repository": {
|
|
21
|
+
"type": "git",
|
|
22
|
+
"url": "https://github.com/edgescaleai/cube-mcp"
|
|
23
|
+
},
|
|
24
|
+
"engines": {
|
|
25
|
+
"node": ">=16"
|
|
26
|
+
}
|
|
27
|
+
}
|