Repository navigation
Expand file tree
/
Copy pathserver.json
More file actions
93 lines (93 loc) · 4.77 KB
/
Copy pathserver.json
File metadata and controls
93 lines (93 loc) · 4.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "io.github.LeanerCloud/cudly-mcp",
"description": "Search and buy AWS/Azure/GCP reserved capacity (RIs, Savings Plans, CUDs) via any MCP client.",
"repository": {
"url": "https://github.com/LeanerCloud/cloud-commitments-mcp",
"source": "github"
},
"version": "0.1.0",
"websiteUrl": "https://cudly.io/mcp/",
"packages": [
{
"registryType": "mcpb",
"identifier": "https://github.com/LeanerCloud/cloud-commitments-mcp/releases/download/v0.1.0/cudly-mcp-full.mcpb",
"fileSha256": "0000000000000000000000000000000000000000000000000000000000000000",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"name": "CUDLY_MCP_ENABLE_REAL_PURCHASES",
"description": "Set to 1 (or true) to let purchase tools execute real, money-spending purchases. Unset (the default) refuses every dry_run=false call before any provider or credential is touched -- see README.md 'Safety model'.",
"isRequired": false,
"isSecret": false,
"format": "string"
},
{
"name": "CUDLY_MCP_MAX_COUNT",
"description": "Positive integer. Per-call ceiling on count (RIs) and vcpu_count (GCP CUDs) for real purchases. Required for any real purchase: unset, empty or invalid refuses it. Bounds size, not dollars (see CUDLY_MCP_MAX_COMMITMENT_USD); not cumulative. See README 'Safety model'.",
"isRequired": false,
"isSecret": false,
"format": "string"
},
{
"name": "CUDLY_MCP_MAX_HOURLY_COMMITMENT",
"description": "Positive number (USD/hour). Per-call ceiling on Savings Plan hourly_commitment. Required for real Savings Plan purchases: unset, empty or invalid refuses it. Not cumulative.",
"isRequired": false,
"isSecret": false,
"format": "string"
},
{
"name": "CUDLY_MCP_MAX_MEMORY_GB",
"description": "Positive number. Per-call ceiling on memory_gb for GCP CUD purchases. Required for real GCP CUD purchases: unset, empty or invalid refuses it. Not cumulative.",
"isRequired": false,
"isSecret": false,
"format": "string"
},
{
"name": "CUDLY_MCP_MAX_COMMITMENT_USD",
"description": "Positive number (USD). Per-call ceiling on the total USD one real purchase commits over its full term, priced by the provider just before buying. Required for any real purchase: unset, empty or invalid refuses it. USD only; purchases that cannot be priced (including real GCP CUD purchases for now) are refused. Not cumulative.",
"isRequired": false,
"isSecret": false,
"format": "string"
},
{
"name": "CUDLY_MCP_BUDGET_USD",
"description": "Positive number (USD). Cumulative budget for the total USD all real purchases commit over their full terms in this server process. Required for any real purchase: unset, empty or invalid refuses it. In memory only: resets on restart, not shared across processes or clients, blind to purchases made elsewhere. A purchase with an unknown outcome counts as spent.",
"isRequired": false,
"isSecret": false,
"format": "string"
},
{
"name": "CUDLY_MCP_AUDIT_LOG",
"description": "Overrides the local JSONL purchase audit path after trimming. When unset, writes to $XDG_STATE_HOME/cudly/mcp-audit.jsonl; if XDG_STATE_HOME is unset, empty, or relative, it is ignored and the fallback is ~/.local/state/cudly/mcp-audit.jsonl. An empty or whitespace-only CUDLY_MCP_AUDIT_LOG value disables auditing.",
"isRequired": false,
"isSecret": false,
"format": "string"
},
{
"name": "ARCHERA_API_KEY",
"description": "Archera API key for the read-only cudly_archera_comparison tool. Unset (the default) disables that tool: calls return an error and send no request. The key is sent only as the x-api-key header to https://api.archera.ai.",
"isRequired": false,
"isSecret": true,
"format": "string"
},
{
"name": "ARCHERA_ORG_ID",
"description": "Archera organization UUID for cudly_archera_comparison. Required together with ARCHERA_API_KEY and ARCHERA_PLAN_ID.",
"isRequired": false,
"isSecret": false,
"format": "string"
},
{
"name": "ARCHERA_PLAN_ID",
"description": "Archera commitment plan UUID for cudly_archera_comparison. Required together with ARCHERA_API_KEY and ARCHERA_ORG_ID.",
"isRequired": false,
"isSecret": false,
"format": "string"
}
]
}
]
}