cloud-cost-mcp 1.1.1 → 1.2.2

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.
@@ -2,7 +2,7 @@
2
2
  * Cloud Cost MCP - Data Loader
3
3
  * Loads pricing data from bundled JSON files for all cloud providers
4
4
  */
5
- import type { CloudProvider, ProviderPricingData, AllCloudPricing, ComputeInstance, StoragePricing, EgressPricing, DataFreshnessInfo } from '../types.js';
5
+ import type { CloudProvider, ProviderPricingData, AllCloudPricing, ComputeInstance, StoragePricing, EgressPricing, DataFreshnessInfo, GPUPricing } from '../types.js';
6
6
  /**
7
7
  * Get pricing data for a specific provider
8
8
  */
@@ -53,4 +53,12 @@ export declare function getAllDatabasePricing(): {
53
53
  gcp: import("../types.js").DatabasePricing[];
54
54
  oci: import("../types.js").DatabasePricing[];
55
55
  };
56
+ /**
57
+ * Get GPU pricing data (currently OCI only)
58
+ */
59
+ export declare function getGPUPricing(type?: string): GPUPricing[];
60
+ /**
61
+ * Get GPU shape by family name
62
+ */
63
+ export declare function getGPUShapeByFamily(shapeFamily: string): GPUPricing | undefined;
56
64
  //# sourceMappingURL=loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/data/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,cAAc,EACd,aAAa,EACb,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAerB;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,GAAG,mBAAmB,CAW5E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,eAAe,CAOpD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,eAAe,EAAE,CAgB1D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,EAAE,CAgBvD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,EAAE,CAQrD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,iBAAiB,EAAE,CAoBtD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,yCAE1D;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED;;GAEG;AACH,wBAAgB,uBAAuB;;;;;EAQtC;AAED;;GAEG;AACH,wBAAgB,qBAAqB;;;;;EAQpC"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/data/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,UAAU,EACX,MAAM,aAAa,CAAC;AAerB;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,aAAa,GAAG,mBAAmB,CAW5E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,eAAe,CAOpD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,eAAe,EAAE,CAgB1D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,EAAE,CAgBvD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,EAAE,CAQrD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,iBAAiB,EAAE,CAoBtD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,yCAE1D;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED;;GAEG;AACH,wBAAgB,uBAAuB;;;;;EAQtC;AAED;;GAEG;AACH,wBAAgB,qBAAqB;;;;;EAQpC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,EAAE,CAsBzD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAK/E"}
@@ -146,4 +146,32 @@ export function getAllDatabasePricing() {
146
146
  oci: allData.oci.database || [],
147
147
  };
148
148
  }
149
+ /**
150
+ * Get GPU pricing data (currently OCI only)
151
+ */
152
+ export function getGPUPricing(type) {
153
+ const cached = pricingCache.get('GPU_PRICING');
154
+ let pricing;
155
+ if (cached) {
156
+ pricing = cached;
157
+ }
158
+ else {
159
+ const ociData = getProviderData('oci');
160
+ pricing = ociData.gpu || [];
161
+ pricingCache.set('GPU_PRICING', pricing, 60);
162
+ }
163
+ if (type) {
164
+ return pricing.filter((p) => p.type === type ||
165
+ p.gpuModel.toLowerCase().includes(type.toLowerCase()) ||
166
+ p.shapeFamily.toLowerCase().includes(type.toLowerCase()));
167
+ }
168
+ return pricing;
169
+ }
170
+ /**
171
+ * Get GPU shape by family name
172
+ */
173
+ export function getGPUShapeByFamily(shapeFamily) {
174
+ const pricing = getGPUPricing();
175
+ return pricing.find((p) => p.shapeFamily.toLowerCase() === shapeFamily.toLowerCase());
176
+ }
149
177
  //# sourceMappingURL=loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/data/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/data/loader.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -24,6 +24,8 @@ import { CallToolRequestSchema, ListToolsRequestSchema, ErrorCode, McpError, } f
24
24
  import { compareCompute, compareStorage, compareEgress, compareKubernetes, findCheapestCompute, getStoragePricingSummary, } from './tools/compare.js';
25
25
  // Import calculator tools
26
26
  import { calculateWorkloadCost, quickEstimate, getAvailablePresets, estimateMigrationSavings, } from './tools/calculator.js';
27
+ // Import GPU tools
28
+ import { listGPUShapes, getGPUShapeDetails, compareGPUShapes, recommendGPUShape, } from './tools/gpu.js';
27
29
  // Import data functions
28
30
  import { getDataFreshness, getProviderData, } from './data/loader.js';
29
31
  // Import real-time fetchers
@@ -34,7 +36,7 @@ import { fetchAWSEC2Pricing, fetchAWSRDSPricing, getAWSLightsailPricing, getAWSR
34
36
  // Create server instance
35
37
  const server = new Server({
36
38
  name: 'cloud-cost-mcp',
37
- version: '1.1.0',
39
+ version: '1.2.2',
38
40
  }, {
39
41
  capabilities: {
40
42
  tools: {},
@@ -192,13 +194,17 @@ const TOOLS = [
192
194
  },
193
195
  {
194
196
  name: 'quick_estimate',
195
- description: 'Get instant cost comparison for common deployment presets.',
197
+ description: 'Get instant cost comparison for common deployment presets including GPU workloads.',
196
198
  inputSchema: {
197
199
  type: 'object',
198
200
  properties: {
199
201
  preset: {
200
202
  type: 'string',
201
- enum: ['small-web-app', 'medium-api-server', 'large-database', 'ml-training', 'kubernetes-cluster', 'data-lake', 'high-egress-cdn'],
203
+ enum: [
204
+ 'small-web-app', 'medium-api-server', 'large-database', 'ml-training',
205
+ 'kubernetes-cluster', 'data-lake', 'high-egress-cdn', 'high-traffic-web',
206
+ 'gpu-inference', 'gpu-training-small', 'gpu-training-large'
207
+ ],
202
208
  description: 'Deployment preset name',
203
209
  },
204
210
  },
@@ -525,6 +531,82 @@ const TOOLS = [
525
531
  properties: {},
526
532
  },
527
533
  },
534
+ // GPU Tools (OCI)
535
+ {
536
+ name: 'list_gpu_shapes',
537
+ description: 'List OCI GPU shapes with pricing. Filter by GPU model (A10, A100, H100, H200, L40S, MI300X) or use case (inference, training).',
538
+ inputSchema: {
539
+ type: 'object',
540
+ properties: {
541
+ gpuModel: {
542
+ type: 'string',
543
+ description: 'Filter by GPU model (e.g., "A100", "H100", "MI300X")',
544
+ },
545
+ useCase: {
546
+ type: 'string',
547
+ enum: ['inference', 'training', 'graphics', 'general'],
548
+ description: 'Filter by intended use case',
549
+ },
550
+ maxPricePerHour: {
551
+ type: 'number',
552
+ description: 'Maximum hourly price filter',
553
+ },
554
+ },
555
+ },
556
+ },
557
+ {
558
+ name: 'get_gpu_shape_details',
559
+ description: 'Get detailed specifications and pricing for a specific OCI GPU shape.',
560
+ inputSchema: {
561
+ type: 'object',
562
+ properties: {
563
+ shapeFamily: {
564
+ type: 'string',
565
+ description: 'GPU shape family (e.g., "BM.GPU.H100.8", "BM.GPU.A100-v2.8", "VM.GPU.A10.1")',
566
+ },
567
+ },
568
+ required: ['shapeFamily'],
569
+ },
570
+ },
571
+ {
572
+ name: 'compare_gpu_shapes',
573
+ description: 'Compare multiple OCI GPU shapes side-by-side on specs, pricing, and price-per-GPU metrics.',
574
+ inputSchema: {
575
+ type: 'object',
576
+ properties: {
577
+ shapes: {
578
+ type: 'array',
579
+ items: { type: 'string' },
580
+ description: 'GPU shape families to compare (e.g., ["BM.GPU.A10.4", "BM.GPU.A100-v2.8", "BM.GPU.H100.8"])',
581
+ },
582
+ },
583
+ required: ['shapes'],
584
+ },
585
+ },
586
+ {
587
+ name: 'recommend_gpu_shape',
588
+ description: 'Get GPU shape recommendation based on workload requirements and budget.',
589
+ inputSchema: {
590
+ type: 'object',
591
+ properties: {
592
+ workloadType: {
593
+ type: 'string',
594
+ enum: ['inference', 'training', 'fine-tuning', 'data-science'],
595
+ description: 'Type of AI/ML workload',
596
+ },
597
+ minGPUMemoryGB: {
598
+ type: 'number',
599
+ description: 'Minimum GPU memory needed per GPU (e.g., 24, 40, 80)',
600
+ },
601
+ budget: {
602
+ type: 'string',
603
+ enum: ['low', 'medium', 'high'],
604
+ description: 'Budget constraint (low: <$5/hr, medium: <$20/hr, high: unlimited)',
605
+ },
606
+ },
607
+ required: ['workloadType'],
608
+ },
609
+ },
528
610
  ];
529
611
  // Handle list tools request
530
612
  server.setRequestHandler(ListToolsRequestSchema, async () => {
@@ -682,6 +764,27 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
682
764
  note: 'Azure VM categories with count of instance types',
683
765
  };
684
766
  break;
767
+ // GPU Tools (OCI)
768
+ case 'list_gpu_shapes':
769
+ result = listGPUShapes({
770
+ gpuModel: typedArgs.gpuModel,
771
+ useCase: typedArgs.useCase,
772
+ maxPricePerHour: typedArgs.maxPricePerHour,
773
+ });
774
+ break;
775
+ case 'get_gpu_shape_details':
776
+ result = getGPUShapeDetails(typedArgs.shapeFamily);
777
+ break;
778
+ case 'compare_gpu_shapes':
779
+ result = compareGPUShapes(typedArgs.shapes);
780
+ break;
781
+ case 'recommend_gpu_shape':
782
+ result = recommendGPUShape({
783
+ workloadType: typedArgs.workloadType,
784
+ minGPUMemoryGB: typedArgs.minGPUMemoryGB,
785
+ budget: typedArgs.budget,
786
+ });
787
+ break;
685
788
  default:
686
789
  throw new McpError(ErrorCode.MethodNotFound, `Unknown tool: ${name}`);
687
790
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -10,13 +10,16 @@ export declare function calculateWorkloadCost(spec: WorkloadSpec): WorkloadCompa
10
10
  /**
11
11
  * Quick estimate for common deployment presets
12
12
  */
13
- export declare function quickEstimate(preset: string): WorkloadComparisonResult;
13
+ export declare function quickEstimate(preset: string): WorkloadComparisonResult & {
14
+ presetDescription?: string;
15
+ };
14
16
  /**
15
17
  * Get available presets
16
18
  */
17
19
  export declare function getAvailablePresets(): Array<{
18
20
  name: string;
19
21
  description: string;
22
+ category: string;
20
23
  }>;
21
24
  /**
22
25
  * Estimate migration savings from one cloud to another
@@ -1 +1 @@
1
- {"version":3,"file":"calculator.d.ts","sourceRoot":"","sources":["../../src/tools/calculator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EAEZ,wBAAwB,EACzB,MAAM,aAAa,CAAC;AAiJrB;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,wBAAwB,CA2ClF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,wBAAwB,CA+CtE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC,CAUlF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE;IAChD,IAAI,EAAE,YAAY,CAAC;IACnB,eAAe,EAAE,aAAa,CAAC;IAC/B,cAAc,CAAC,EAAE,aAAa,CAAC;CAChC,GAAG;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB,CAsCA"}
1
+ {"version":3,"file":"calculator.d.ts","sourceRoot":"","sources":["../../src/tools/calculator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EAEZ,wBAAwB,EACzB,MAAM,aAAa,CAAC;AAiJrB;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,YAAY,GAAG,wBAAwB,CA2ClF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,wBAAwB,GAAG;IAAE,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAAE,CAyGvG;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAgBpG;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE;IAChD,IAAI,EAAE,YAAY,CAAC;IACnB,eAAe,EAAE,aAAa,CAAC;IAC/B,cAAc,CAAC,EAAE,aAAa,CAAC;CAChC,GAAG;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB,CAsCA"}
@@ -174,59 +174,123 @@ export function calculateWorkloadCost(spec) {
174
174
  export function quickEstimate(preset) {
175
175
  const presets = {
176
176
  'small-web-app': {
177
- compute: { vcpus: 2, memoryGB: 4, count: 1 },
178
- storage: { blockGB: 50 },
179
- egress: { monthlyGB: 100 },
177
+ spec: {
178
+ compute: { vcpus: 2, memoryGB: 4, count: 1 },
179
+ storage: { blockGB: 50 },
180
+ egress: { monthlyGB: 100 },
181
+ },
182
+ description: 'Basic web application with single instance',
180
183
  },
181
184
  'medium-api-server': {
182
- compute: { vcpus: 4, memoryGB: 16, count: 2 },
183
- storage: { blockGB: 200, objectGB: 100 },
184
- egress: { monthlyGB: 500 },
185
+ spec: {
186
+ compute: { vcpus: 4, memoryGB: 16, count: 2 },
187
+ storage: { blockGB: 200, objectGB: 100 },
188
+ egress: { monthlyGB: 500 },
189
+ },
190
+ description: 'API server with load balancing and moderate storage',
185
191
  },
186
192
  'large-database': {
187
- compute: { vcpus: 8, memoryGB: 64, count: 1 },
188
- storage: { blockGB: 1000 },
189
- egress: { monthlyGB: 200 },
193
+ spec: {
194
+ compute: { vcpus: 8, memoryGB: 64, count: 1 },
195
+ storage: { blockGB: 1000 },
196
+ egress: { monthlyGB: 200 },
197
+ },
198
+ description: 'High-memory database server with 1TB storage',
190
199
  },
191
200
  'ml-training': {
192
- compute: { vcpus: 8, memoryGB: 32, count: 2 },
193
- storage: { objectGB: 500 },
194
- egress: { monthlyGB: 1000 },
201
+ spec: {
202
+ compute: { vcpus: 8, memoryGB: 32, count: 2 },
203
+ storage: { objectGB: 500 },
204
+ egress: { monthlyGB: 1000 },
205
+ },
206
+ description: 'CPU-based ML training cluster (no GPU)',
195
207
  },
196
208
  'kubernetes-cluster': {
197
- kubernetes: { nodeCount: 3, nodeVcpus: 4, nodeMemoryGB: 16 },
198
- storage: { blockGB: 300 },
199
- egress: { monthlyGB: 500 },
209
+ spec: {
210
+ kubernetes: { nodeCount: 3, nodeVcpus: 4, nodeMemoryGB: 16 },
211
+ storage: { blockGB: 300 },
212
+ egress: { monthlyGB: 500 },
213
+ },
214
+ description: 'Standard 3-node Kubernetes cluster',
200
215
  },
201
216
  'data-lake': {
202
- compute: { vcpus: 4, memoryGB: 16, count: 2 },
203
- storage: { objectGB: 5000 },
204
- egress: { monthlyGB: 2000 },
217
+ spec: {
218
+ compute: { vcpus: 16, memoryGB: 128, count: 1 },
219
+ storage: { objectGB: 100000 },
220
+ egress: { monthlyGB: 5000 },
221
+ },
222
+ description: 'Object storage-heavy analytics workload (100TB)',
205
223
  },
206
224
  'high-egress-cdn': {
207
- compute: { vcpus: 2, memoryGB: 4, count: 2 },
208
- storage: { objectGB: 200 },
209
- egress: { monthlyGB: 10000 },
225
+ spec: {
226
+ compute: { vcpus: 2, memoryGB: 4, count: 2 },
227
+ storage: { objectGB: 200 },
228
+ egress: { monthlyGB: 10000 },
229
+ },
230
+ description: 'CDN origin servers with 10TB/month egress',
231
+ },
232
+ // GPU Presets (using equivalent vCPU/memory for cost estimation)
233
+ 'gpu-inference': {
234
+ spec: {
235
+ compute: { vcpus: 64, memoryGB: 1024, count: 1 },
236
+ storage: { blockGB: 500, objectGB: 1000 },
237
+ egress: { monthlyGB: 2000 },
238
+ },
239
+ description: 'GPU inference server (BM.GPU.A10.4 equivalent: $2.95/hr)',
240
+ },
241
+ 'gpu-training-small': {
242
+ spec: {
243
+ compute: { vcpus: 128, memoryGB: 2048, count: 1 },
244
+ storage: { blockGB: 2000, objectGB: 5000 },
245
+ egress: { monthlyGB: 5000 },
246
+ },
247
+ description: 'GPU training (BM.GPU.A100-v2.8 equivalent: $17/hr, ~200hrs/month)',
248
+ },
249
+ 'gpu-training-large': {
250
+ spec: {
251
+ compute: { vcpus: 112, memoryGB: 2048, count: 1 },
252
+ storage: { blockGB: 10000, objectGB: 50000 },
253
+ egress: { monthlyGB: 10000 },
254
+ },
255
+ description: 'Large-scale GPU training (BM.GPU.H100.8 equivalent: $36/hr)',
256
+ },
257
+ 'high-traffic-web': {
258
+ spec: {
259
+ compute: { vcpus: 8, memoryGB: 64, count: 4 },
260
+ storage: { blockGB: 500, objectGB: 2000 },
261
+ egress: { monthlyGB: 10000 },
262
+ },
263
+ description: 'Load-balanced web tier with 4 instances and CDN',
210
264
  },
211
265
  };
212
- const spec = presets[preset];
213
- if (!spec) {
266
+ const presetConfig = presets[preset];
267
+ if (!presetConfig) {
214
268
  throw new Error(`Unknown preset: ${preset}. Available presets: ${Object.keys(presets).join(', ')}`);
215
269
  }
216
- return calculateWorkloadCost(spec);
270
+ const result = calculateWorkloadCost(presetConfig.spec);
271
+ return {
272
+ ...result,
273
+ presetDescription: presetConfig.description,
274
+ };
217
275
  }
218
276
  /**
219
277
  * Get available presets
220
278
  */
221
279
  export function getAvailablePresets() {
222
280
  return [
223
- { name: 'small-web-app', description: '2 vCPU, 4GB RAM, 50GB storage, 100GB egress' },
224
- { name: 'medium-api-server', description: '2x 4 vCPU, 16GB RAM, 200GB block + 100GB object, 500GB egress' },
225
- { name: 'large-database', description: '8 vCPU, 64GB RAM, 1TB storage, 200GB egress' },
226
- { name: 'ml-training', description: '2x 8 vCPU, 32GB RAM, 500GB object storage, 1TB egress' },
227
- { name: 'kubernetes-cluster', description: '3 nodes × 4 vCPU × 16GB, 300GB storage, 500GB egress' },
228
- { name: 'data-lake', description: '2x 4 vCPU, 16GB RAM, 5TB object storage, 2TB egress' },
229
- { name: 'high-egress-cdn', description: '2x 2 vCPU, 4GB RAM, 200GB object, 10TB egress (shows OCI advantage)' },
281
+ // Standard presets
282
+ { name: 'small-web-app', description: '2 vCPU, 4GB RAM, 50GB storage, 100GB egress', category: 'web' },
283
+ { name: 'medium-api-server', description: '2x 4 vCPU, 16GB RAM, 200GB block + 100GB object, 500GB egress', category: 'web' },
284
+ { name: 'high-traffic-web', description: '4x 8 vCPU, 64GB RAM, 500GB block + 2TB object, 10TB egress', category: 'web' },
285
+ { name: 'large-database', description: '8 vCPU, 64GB RAM, 1TB storage, 200GB egress', category: 'database' },
286
+ { name: 'kubernetes-cluster', description: '3 nodes × 4 vCPU × 16GB, 300GB storage, 500GB egress', category: 'kubernetes' },
287
+ { name: 'data-lake', description: '16 vCPU, 128GB RAM, 100TB object storage, 5TB egress', category: 'analytics' },
288
+ { name: 'high-egress-cdn', description: '2x 2 vCPU, 4GB RAM, 200GB object, 10TB egress (shows OCI advantage)', category: 'networking' },
289
+ // GPU presets
290
+ { name: 'ml-training', description: 'CPU-based: 2x 8 vCPU, 32GB RAM, 500GB object storage, 1TB egress', category: 'ml' },
291
+ { name: 'gpu-inference', description: 'GPU inference: A10 equivalent (64 vCPU, 1TB RAM, ~$2.95/hr GPU cost)', category: 'gpu' },
292
+ { name: 'gpu-training-small', description: 'GPU training: A100 equivalent (128 vCPU, 2TB RAM, ~$17/hr GPU cost)', category: 'gpu' },
293
+ { name: 'gpu-training-large', description: 'Large GPU training: H100 equivalent (112 vCPU, 2TB RAM, ~$36/hr GPU cost)', category: 'gpu' },
230
294
  ];
231
295
  }
232
296
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../src/tools/calculator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"calculator.js","sourceRoot":"","sources":["../../src/tools/calculator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Cloud Cost MCP - GPU Tools
3
+ * Tools for listing, comparing, and recommending GPU shapes
4
+ */
5
+ import type { GPUPricing, GPUUseCase } from '../types.js';
6
+ /**
7
+ * List GPU shapes with optional filtering
8
+ */
9
+ export declare function listGPUShapes(params: {
10
+ gpuModel?: string;
11
+ useCase?: GPUUseCase;
12
+ maxPricePerHour?: number;
13
+ }): {
14
+ shapes: GPUPricing[];
15
+ count: number;
16
+ summary: string;
17
+ };
18
+ /**
19
+ * Get detailed info for a specific GPU shape
20
+ */
21
+ export declare function getGPUShapeDetails(shapeFamily: string): {
22
+ found: boolean;
23
+ shape?: GPUPricing;
24
+ monthlyEstimate?: number;
25
+ costBreakdown?: {
26
+ hourly: number;
27
+ daily: number;
28
+ monthly: number;
29
+ annual: number;
30
+ };
31
+ specs?: {
32
+ totalGPUMemoryGB: number;
33
+ gpuMemoryPerUnit: number;
34
+ memoryPerOCPU: number;
35
+ };
36
+ message: string;
37
+ };
38
+ /**
39
+ * Compare multiple GPU shapes side by side
40
+ */
41
+ export declare function compareGPUShapes(shapes: string[]): {
42
+ comparison: Array<{
43
+ shapeFamily: string;
44
+ name: string;
45
+ gpuCount: number;
46
+ gpuModel: string;
47
+ gpuMemoryGB: number;
48
+ totalGPUMemoryGB: number;
49
+ ocpus: number;
50
+ memoryGB: number;
51
+ pricePerHour: number;
52
+ monthlyPrice: number;
53
+ useCase: string;
54
+ pricePerGPU: number;
55
+ pricePerGPUMemoryGB: number;
56
+ }>;
57
+ cheapest: string | null;
58
+ mostMemory: string | null;
59
+ summary: string;
60
+ };
61
+ /**
62
+ * Recommend GPU shape based on workload requirements
63
+ */
64
+ export declare function recommendGPUShape(params: {
65
+ workloadType: 'inference' | 'training' | 'fine-tuning' | 'data-science';
66
+ minGPUMemoryGB?: number;
67
+ budget?: 'low' | 'medium' | 'high';
68
+ }): {
69
+ recommended: GPUPricing | null;
70
+ alternatives: GPUPricing[];
71
+ reasoning: string;
72
+ allMatches: GPUPricing[];
73
+ };
74
+ //# sourceMappingURL=gpu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpu.d.ts","sourceRoot":"","sources":["../../src/tools/gpu.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG1D;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG;IACF,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAqCA;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG;IACvD,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE;QACd,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE;QACN,gBAAgB,EAAE,MAAM,CAAC;QACzB,gBAAgB,EAAE,MAAM,CAAC;QACzB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB,CAgCA;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG;IAClD,UAAU,EAAE,KAAK,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,gBAAgB,EAAE,MAAM,CAAC;QACzB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC,CAAC;IACH,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB,CA0EA;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IACxC,YAAY,EAAE,WAAW,GAAG,UAAU,GAAG,aAAa,GAAG,cAAc,CAAC;IACxE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;CACpC,GAAG;IACF,WAAW,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,EAAE,CAAC;CAC1B,CAqFA"}