@nirvana-labs/nirvana-mcp 1.26.4 → 1.27.0

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 CHANGED
@@ -263,6 +263,11 @@ The following tools are available in this MCP server.
263
263
  - `delete_projects` (`write`): Delete a project
264
264
  - `get_projects` (`read`): Get details about a project
265
265
 
266
+ ### Resource `regions`:
267
+
268
+ - `list_regions` (`read`): List all regions
269
+ - `get_regions` (`read`): Get a region by name
270
+
266
271
  ### Resource `compute.vms`:
267
272
 
268
273
  - `create_compute_vms` (`write`): Create a VM
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nirvana-labs/nirvana-mcp",
3
- "version": "1.26.4",
3
+ "version": "1.27.0",
4
4
  "description": "The official MCP Server for the Nirvana Labs API",
5
5
  "author": "Nirvana Labs <engineering@nirvanalabs.io>",
6
6
  "types": "./index.d.ts",
@@ -18,7 +18,7 @@
18
18
  "access": "public"
19
19
  },
20
20
  "dependencies": {
21
- "@nirvana-labs/nirvana": "^1.26.4",
21
+ "@nirvana-labs/nirvana": "^1.27.0",
22
22
  "@cloudflare/cabidela": "^0.2.4",
23
23
  "@modelcontextprotocol/sdk": "^1.24.0",
24
24
  "@valtown/deno-http-worker": "^0.0.21",
package/server.js CHANGED
@@ -22,7 +22,7 @@ var tools_2 = require("./tools.js");
22
22
  Object.defineProperty(exports, "endpoints", { enumerable: true, get: function () { return tools_2.endpoints; } });
23
23
  const newMcpServer = () => new mcp_js_1.McpServer({
24
24
  name: 'nirvana_labs_nirvana_api',
25
- version: '1.26.4',
25
+ version: '1.27.0',
26
26
  }, { capabilities: { tools: {}, logging: {} } });
27
27
  exports.newMcpServer = newMcpServer;
28
28
  // Create server instance
package/server.mjs CHANGED
@@ -11,7 +11,7 @@ export { ClientType } from "./compat.mjs";
11
11
  export { endpoints } from "./tools.mjs";
12
12
  export const newMcpServer = () => new McpServer({
13
13
  name: 'nirvana_labs_nirvana_api',
14
- version: '1.26.4',
14
+ version: '1.27.0',
15
15
  }, { capabilities: { tools: {}, logging: {} } });
16
16
  // Create server instance
17
17
  export const server = newMcpServer();
package/src/server.ts CHANGED
@@ -34,7 +34,7 @@ export const newMcpServer = () =>
34
34
  new McpServer(
35
35
  {
36
36
  name: 'nirvana_labs_nirvana_api',
37
- version: '1.26.4',
37
+ version: '1.27.0',
38
38
  },
39
39
  { capabilities: { tools: {}, logging: {} } },
40
40
  );
@@ -17,6 +17,8 @@ import update_projects from './projects/update-projects';
17
17
  import list_projects from './projects/list-projects';
18
18
  import delete_projects from './projects/delete-projects';
19
19
  import get_projects from './projects/get-projects';
20
+ import list_regions from './regions/list-regions';
21
+ import get_regions from './regions/get-regions';
20
22
  import create_compute_vms from './compute/vms/create-compute-vms';
21
23
  import update_compute_vms from './compute/vms/update-compute-vms';
22
24
  import list_compute_vms from './compute/vms/list-compute-vms';
@@ -130,6 +132,8 @@ addEndpoint(update_projects);
130
132
  addEndpoint(list_projects);
131
133
  addEndpoint(delete_projects);
132
134
  addEndpoint(get_projects);
135
+ addEndpoint(list_regions);
136
+ addEndpoint(get_regions);
133
137
  addEndpoint(create_compute_vms);
134
138
  addEndpoint(update_compute_vms);
135
139
  addEndpoint(list_compute_vms);
@@ -0,0 +1,54 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { isJqError, maybeFilter } from '@nirvana-labs/nirvana-mcp/filtering';
4
+ import { Metadata, asErrorResult, asTextContentResult } from '@nirvana-labs/nirvana-mcp/tools/types';
5
+
6
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
+ import NirvanaLabs from '@nirvana-labs/nirvana';
8
+
9
+ export const metadata: Metadata = {
10
+ resource: 'regions',
11
+ operation: 'read',
12
+ tags: [],
13
+ httpMethod: 'get',
14
+ httpPath: '/v1/regions/{region_name}',
15
+ operationId: 'get_region',
16
+ };
17
+
18
+ export const tool: Tool = {
19
+ name: 'get_regions',
20
+ description:
21
+ "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nGet a region by name\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/region',\n $defs: {\n region: {\n type: 'object',\n description: 'Region response with product availability.',\n properties: {\n availability: {\n $ref: '#/$defs/region_availability'\n },\n compute: {\n type: 'object',\n description: 'Compute products available in this region.',\n properties: {\n vms: {\n type: 'boolean',\n description: 'VMs indicates if Virtual Machines are available.'\n }\n },\n required: [ 'vms'\n ]\n },\n name: {\n type: 'string',\n description: 'Name of the region.'\n },\n networking: {\n type: 'object',\n description: 'Networking products available in this region.',\n properties: {\n connect: {\n type: 'boolean',\n description: 'Connect indicates if Nirvana Connect is available.'\n },\n vpcs: {\n type: 'boolean',\n description: 'VPCs indicates if Virtual Private Clouds are available.'\n }\n },\n required: [ 'connect',\n 'vpcs'\n ]\n },\n storage: {\n type: 'object',\n description: 'Storage products available in this region.',\n properties: {\n abs: {\n type: 'boolean',\n description: 'ABS indicates if Accelerated Block Storage is available.'\n },\n local_nvme: {\n type: 'boolean',\n description: 'LocalNVMe indicates if locally-attached NVMe storage is available.'\n }\n },\n required: [ 'abs',\n 'local_nvme'\n ]\n }\n },\n required: [ 'availability',\n 'compute',\n 'name',\n 'networking',\n 'storage'\n ]\n },\n region_availability: {\n type: 'string',\n description: 'Availability status of the region.',\n enum: [ 'live',\n 'preview',\n 'maintenance',\n 'sunset'\n ]\n }\n }\n}\n```",
22
+ inputSchema: {
23
+ type: 'object',
24
+ properties: {
25
+ region_name: {
26
+ type: 'string',
27
+ },
28
+ jq_filter: {
29
+ type: 'string',
30
+ title: 'jq Filter',
31
+ description:
32
+ 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
33
+ },
34
+ },
35
+ required: ['region_name'],
36
+ },
37
+ annotations: {
38
+ readOnlyHint: true,
39
+ },
40
+ };
41
+
42
+ export const handler = async (client: NirvanaLabs, args: Record<string, unknown> | undefined) => {
43
+ const { region_name, jq_filter, ...body } = args as any;
44
+ try {
45
+ return asTextContentResult(await maybeFilter(jq_filter, await client.regions.get(region_name)));
46
+ } catch (error) {
47
+ if (error instanceof NirvanaLabs.APIError || isJqError(error)) {
48
+ return asErrorResult(error.message);
49
+ }
50
+ throw error;
51
+ }
52
+ };
53
+
54
+ export default { metadata, tool, handler };
@@ -0,0 +1,60 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { isJqError, maybeFilter } from '@nirvana-labs/nirvana-mcp/filtering';
4
+ import { Metadata, asErrorResult, asTextContentResult } from '@nirvana-labs/nirvana-mcp/tools/types';
5
+
6
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
7
+ import NirvanaLabs from '@nirvana-labs/nirvana';
8
+
9
+ export const metadata: Metadata = {
10
+ resource: 'regions',
11
+ operation: 'read',
12
+ tags: [],
13
+ httpMethod: 'get',
14
+ httpPath: '/v1/regions',
15
+ operationId: 'list_regions',
16
+ };
17
+
18
+ export const tool: Tool = {
19
+ name: 'list_regions',
20
+ description:
21
+ "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nList all regions\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/region_list',\n $defs: {\n region_list: {\n type: 'object',\n properties: {\n items: {\n type: 'array',\n items: {\n $ref: '#/$defs/region'\n }\n },\n pagination: {\n $ref: '#/$defs/pagination'\n }\n },\n required: [ 'items',\n 'pagination'\n ]\n },\n region: {\n type: 'object',\n description: 'Region response with product availability.',\n properties: {\n availability: {\n $ref: '#/$defs/region_availability'\n },\n compute: {\n type: 'object',\n description: 'Compute products available in this region.',\n properties: {\n vms: {\n type: 'boolean',\n description: 'VMs indicates if Virtual Machines are available.'\n }\n },\n required: [ 'vms'\n ]\n },\n name: {\n type: 'string',\n description: 'Name of the region.'\n },\n networking: {\n type: 'object',\n description: 'Networking products available in this region.',\n properties: {\n connect: {\n type: 'boolean',\n description: 'Connect indicates if Nirvana Connect is available.'\n },\n vpcs: {\n type: 'boolean',\n description: 'VPCs indicates if Virtual Private Clouds are available.'\n }\n },\n required: [ 'connect',\n 'vpcs'\n ]\n },\n storage: {\n type: 'object',\n description: 'Storage products available in this region.',\n properties: {\n abs: {\n type: 'boolean',\n description: 'ABS indicates if Accelerated Block Storage is available.'\n },\n local_nvme: {\n type: 'boolean',\n description: 'LocalNVMe indicates if locally-attached NVMe storage is available.'\n }\n },\n required: [ 'abs',\n 'local_nvme'\n ]\n }\n },\n required: [ 'availability',\n 'compute',\n 'name',\n 'networking',\n 'storage'\n ]\n },\n region_availability: {\n type: 'string',\n description: 'Availability status of the region.',\n enum: [ 'live',\n 'preview',\n 'maintenance',\n 'sunset'\n ]\n },\n pagination: {\n type: 'object',\n description: 'Pagination response details.',\n properties: {\n next_cursor: {\n type: 'string'\n },\n previous_cursor: {\n type: 'string'\n },\n total_count: {\n type: 'integer'\n }\n },\n required: [ 'next_cursor',\n 'previous_cursor',\n 'total_count'\n ]\n }\n }\n}\n```",
22
+ inputSchema: {
23
+ type: 'object',
24
+ properties: {
25
+ cursor: {
26
+ type: 'string',
27
+ description: 'Pagination cursor returned by a previous request',
28
+ },
29
+ limit: {
30
+ type: 'integer',
31
+ description: 'Maximum number of items to return',
32
+ },
33
+ jq_filter: {
34
+ type: 'string',
35
+ title: 'jq Filter',
36
+ description:
37
+ 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
38
+ },
39
+ },
40
+ required: [],
41
+ },
42
+ annotations: {
43
+ readOnlyHint: true,
44
+ },
45
+ };
46
+
47
+ export const handler = async (client: NirvanaLabs, args: Record<string, unknown> | undefined) => {
48
+ const { jq_filter, ...body } = args as any;
49
+ const response = await client.regions.list(body).asResponse();
50
+ try {
51
+ return asTextContentResult(await maybeFilter(jq_filter, await response.json()));
52
+ } catch (error) {
53
+ if (error instanceof NirvanaLabs.APIError || isJqError(error)) {
54
+ return asErrorResult(error.message);
55
+ }
56
+ throw error;
57
+ }
58
+ };
59
+
60
+ export default { metadata, tool, handler };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE;AAE9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;AA6G/C,eAAO,MAAM,SAAS,EAAE,QAAQ,EAAO,CAAC;AAiHxC,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC;IAChD,EAAE,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,CA4B1E"}
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE;AAE9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;AA+G/C,eAAO,MAAM,SAAS,EAAE,QAAQ,EAAO,CAAC;AAmHxC,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC;IAChD,EAAE,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,CA4B1E"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE;AAE9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;AA6G/C,eAAO,MAAM,SAAS,EAAE,QAAQ,EAAO,CAAC;AAiHxC,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC;IAChD,EAAE,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,CA4B1E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"OAEO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE;AAE9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;AA+G/C,eAAO,MAAM,SAAS,EAAE,QAAQ,EAAO,CAAC;AAmHxC,MAAM,MAAM,MAAM,GAAG;IACnB,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC;IAChD,EAAE,EAAE,SAAS,GAAG,SAAS,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,CA4B1E"}
package/tools/index.js CHANGED
@@ -19,6 +19,8 @@ const update_projects_1 = __importDefault(require("./projects/update-projects.js
19
19
  const list_projects_1 = __importDefault(require("./projects/list-projects.js"));
20
20
  const delete_projects_1 = __importDefault(require("./projects/delete-projects.js"));
21
21
  const get_projects_1 = __importDefault(require("./projects/get-projects.js"));
22
+ const list_regions_1 = __importDefault(require("./regions/list-regions.js"));
23
+ const get_regions_1 = __importDefault(require("./regions/get-regions.js"));
22
24
  const create_compute_vms_1 = __importDefault(require("./compute/vms/create-compute-vms.js"));
23
25
  const update_compute_vms_1 = __importDefault(require("./compute/vms/update-compute-vms.js"));
24
26
  const list_compute_vms_1 = __importDefault(require("./compute/vms/list-compute-vms.js"));
@@ -129,6 +131,8 @@ addEndpoint(update_projects_1.default);
129
131
  addEndpoint(list_projects_1.default);
130
132
  addEndpoint(delete_projects_1.default);
131
133
  addEndpoint(get_projects_1.default);
134
+ addEndpoint(list_regions_1.default);
135
+ addEndpoint(get_regions_1.default);
132
136
  addEndpoint(create_compute_vms_1.default);
133
137
  addEndpoint(update_compute_vms_1.default);
134
138
  addEndpoint(list_compute_vms_1.default);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"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"}
package/tools/index.mjs CHANGED
@@ -12,6 +12,8 @@ import update_projects from "./projects/update-projects.mjs";
12
12
  import list_projects from "./projects/list-projects.mjs";
13
13
  import delete_projects from "./projects/delete-projects.mjs";
14
14
  import get_projects from "./projects/get-projects.mjs";
15
+ import list_regions from "./regions/list-regions.mjs";
16
+ import get_regions from "./regions/get-regions.mjs";
15
17
  import create_compute_vms from "./compute/vms/create-compute-vms.mjs";
16
18
  import update_compute_vms from "./compute/vms/update-compute-vms.mjs";
17
19
  import list_compute_vms from "./compute/vms/list-compute-vms.mjs";
@@ -122,6 +124,8 @@ addEndpoint(update_projects);
122
124
  addEndpoint(list_projects);
123
125
  addEndpoint(delete_projects);
124
126
  addEndpoint(get_projects);
127
+ addEndpoint(list_regions);
128
+ addEndpoint(get_regions);
125
129
  addEndpoint(create_compute_vms);
126
130
  addEndpoint(update_compute_vms);
127
131
  addEndpoint(list_compute_vms);
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import { Metadata } from '@nirvana-labs/nirvana-mcp/tools/types';
2
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
3
+ import NirvanaLabs from '@nirvana-labs/nirvana';
4
+ export declare const metadata: Metadata;
5
+ export declare const tool: Tool;
6
+ export declare const handler: (client: NirvanaLabs, args: Record<string, unknown> | undefined) => Promise<import("@nirvana-labs/nirvana-mcp/tools/types").ToolCallResult>;
7
+ declare const _default: {
8
+ metadata: Metadata;
9
+ tool: {
10
+ inputSchema: {
11
+ [x: string]: unknown;
12
+ type: "object";
13
+ properties?: {
14
+ [x: string]: object;
15
+ } | undefined;
16
+ required?: string[] | undefined;
17
+ };
18
+ name: string;
19
+ description?: string | undefined;
20
+ outputSchema?: {
21
+ [x: string]: unknown;
22
+ type: "object";
23
+ properties?: {
24
+ [x: string]: object;
25
+ } | undefined;
26
+ required?: string[] | undefined;
27
+ } | undefined;
28
+ annotations?: {
29
+ title?: string | undefined;
30
+ readOnlyHint?: boolean | undefined;
31
+ destructiveHint?: boolean | undefined;
32
+ idempotentHint?: boolean | undefined;
33
+ openWorldHint?: boolean | undefined;
34
+ } | undefined;
35
+ execution?: {
36
+ taskSupport?: "optional" | "required" | "forbidden" | undefined;
37
+ } | undefined;
38
+ _meta?: {
39
+ [x: string]: unknown;
40
+ } | undefined;
41
+ icons?: {
42
+ src: string;
43
+ mimeType?: string | undefined;
44
+ sizes?: string[] | undefined;
45
+ }[] | undefined;
46
+ title?: string | undefined;
47
+ };
48
+ handler: (client: NirvanaLabs, args: Record<string, unknown> | undefined) => Promise<import("@nirvana-labs/nirvana-mcp/tools/types").ToolCallResult>;
49
+ };
50
+ export default _default;
51
+ //# sourceMappingURL=get-regions.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-regions.d.mts","sourceRoot":"","sources":["../../src/tools/regions/get-regions.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAsC,MAAM,uCAAuC;OAE7F,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,WAAW,MAAM,uBAAuB;AAE/C,eAAO,MAAM,QAAQ,EAAE,QAOtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAsBlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,4EAU3F,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAVoC,WAAW,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAY5F,wBAA2C"}
@@ -0,0 +1,51 @@
1
+ import { Metadata } from '@nirvana-labs/nirvana-mcp/tools/types';
2
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
3
+ import NirvanaLabs from '@nirvana-labs/nirvana';
4
+ export declare const metadata: Metadata;
5
+ export declare const tool: Tool;
6
+ export declare const handler: (client: NirvanaLabs, args: Record<string, unknown> | undefined) => Promise<import("@nirvana-labs/nirvana-mcp/tools/types").ToolCallResult>;
7
+ declare const _default: {
8
+ metadata: Metadata;
9
+ tool: {
10
+ inputSchema: {
11
+ [x: string]: unknown;
12
+ type: "object";
13
+ properties?: {
14
+ [x: string]: object;
15
+ } | undefined;
16
+ required?: string[] | undefined;
17
+ };
18
+ name: string;
19
+ description?: string | undefined;
20
+ outputSchema?: {
21
+ [x: string]: unknown;
22
+ type: "object";
23
+ properties?: {
24
+ [x: string]: object;
25
+ } | undefined;
26
+ required?: string[] | undefined;
27
+ } | undefined;
28
+ annotations?: {
29
+ title?: string | undefined;
30
+ readOnlyHint?: boolean | undefined;
31
+ destructiveHint?: boolean | undefined;
32
+ idempotentHint?: boolean | undefined;
33
+ openWorldHint?: boolean | undefined;
34
+ } | undefined;
35
+ execution?: {
36
+ taskSupport?: "optional" | "required" | "forbidden" | undefined;
37
+ } | undefined;
38
+ _meta?: {
39
+ [x: string]: unknown;
40
+ } | undefined;
41
+ icons?: {
42
+ src: string;
43
+ mimeType?: string | undefined;
44
+ sizes?: string[] | undefined;
45
+ }[] | undefined;
46
+ title?: string | undefined;
47
+ };
48
+ handler: (client: NirvanaLabs, args: Record<string, unknown> | undefined) => Promise<import("@nirvana-labs/nirvana-mcp/tools/types").ToolCallResult>;
49
+ };
50
+ export default _default;
51
+ //# sourceMappingURL=get-regions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-regions.d.ts","sourceRoot":"","sources":["../../src/tools/regions/get-regions.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAsC,MAAM,uCAAuC;OAE7F,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,WAAW,MAAM,uBAAuB;AAE/C,eAAO,MAAM,QAAQ,EAAE,QAOtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAsBlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,4EAU3F,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAVoC,WAAW,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAY5F,wBAA2C"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.handler = exports.tool = exports.metadata = void 0;
8
+ const filtering_1 = require("@nirvana-labs/nirvana-mcp/filtering");
9
+ const types_1 = require("@nirvana-labs/nirvana-mcp/tools/types");
10
+ const nirvana_1 = __importDefault(require("@nirvana-labs/nirvana"));
11
+ exports.metadata = {
12
+ resource: 'regions',
13
+ operation: 'read',
14
+ tags: [],
15
+ httpMethod: 'get',
16
+ httpPath: '/v1/regions/{region_name}',
17
+ operationId: 'get_region',
18
+ };
19
+ exports.tool = {
20
+ name: 'get_regions',
21
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nGet a region by name\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/region',\n $defs: {\n region: {\n type: 'object',\n description: 'Region response with product availability.',\n properties: {\n availability: {\n $ref: '#/$defs/region_availability'\n },\n compute: {\n type: 'object',\n description: 'Compute products available in this region.',\n properties: {\n vms: {\n type: 'boolean',\n description: 'VMs indicates if Virtual Machines are available.'\n }\n },\n required: [ 'vms'\n ]\n },\n name: {\n type: 'string',\n description: 'Name of the region.'\n },\n networking: {\n type: 'object',\n description: 'Networking products available in this region.',\n properties: {\n connect: {\n type: 'boolean',\n description: 'Connect indicates if Nirvana Connect is available.'\n },\n vpcs: {\n type: 'boolean',\n description: 'VPCs indicates if Virtual Private Clouds are available.'\n }\n },\n required: [ 'connect',\n 'vpcs'\n ]\n },\n storage: {\n type: 'object',\n description: 'Storage products available in this region.',\n properties: {\n abs: {\n type: 'boolean',\n description: 'ABS indicates if Accelerated Block Storage is available.'\n },\n local_nvme: {\n type: 'boolean',\n description: 'LocalNVMe indicates if locally-attached NVMe storage is available.'\n }\n },\n required: [ 'abs',\n 'local_nvme'\n ]\n }\n },\n required: [ 'availability',\n 'compute',\n 'name',\n 'networking',\n 'storage'\n ]\n },\n region_availability: {\n type: 'string',\n description: 'Availability status of the region.',\n enum: [ 'live',\n 'preview',\n 'maintenance',\n 'sunset'\n ]\n }\n }\n}\n```",
22
+ inputSchema: {
23
+ type: 'object',
24
+ properties: {
25
+ region_name: {
26
+ type: 'string',
27
+ },
28
+ jq_filter: {
29
+ type: 'string',
30
+ title: 'jq Filter',
31
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
32
+ },
33
+ },
34
+ required: ['region_name'],
35
+ },
36
+ annotations: {
37
+ readOnlyHint: true,
38
+ },
39
+ };
40
+ const handler = async (client, args) => {
41
+ const { region_name, jq_filter, ...body } = args;
42
+ try {
43
+ return (0, types_1.asTextContentResult)(await (0, filtering_1.maybeFilter)(jq_filter, await client.regions.get(region_name)));
44
+ }
45
+ catch (error) {
46
+ if (error instanceof nirvana_1.default.APIError || (0, filtering_1.isJqError)(error)) {
47
+ return (0, types_1.asErrorResult)(error.message);
48
+ }
49
+ throw error;
50
+ }
51
+ };
52
+ exports.handler = handler;
53
+ exports.default = { metadata: exports.metadata, tool: exports.tool, handler: exports.handler };
54
+ //# sourceMappingURL=get-regions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-regions.js","sourceRoot":"","sources":["../../src/tools/regions/get-regions.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;AAEtF,mEAA6E;AAC7E,iEAAqG;AAGrG,oEAAgD;AAEnC,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,2BAA2B;IACrC,WAAW,EAAE,YAAY;CAC1B,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,aAAa;IACnB,WAAW,EACT,k5EAAk5E;IACp5E,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;aACf;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAmB,EAAE,IAAyC,EAAE,EAAE;IAC9F,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACxD,IAAI,CAAC;QACH,OAAO,IAAA,2BAAmB,EAAC,MAAM,IAAA,uBAAW,EAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,iBAAW,CAAC,QAAQ,IAAI,IAAA,qBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;YAC9D,OAAO,IAAA,qBAAa,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAVW,QAAA,OAAO,WAUlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
@@ -0,0 +1,47 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { isJqError, maybeFilter } from '@nirvana-labs/nirvana-mcp/filtering';
3
+ import { asErrorResult, asTextContentResult } from '@nirvana-labs/nirvana-mcp/tools/types';
4
+ import NirvanaLabs from '@nirvana-labs/nirvana';
5
+ export const metadata = {
6
+ resource: 'regions',
7
+ operation: 'read',
8
+ tags: [],
9
+ httpMethod: 'get',
10
+ httpPath: '/v1/regions/{region_name}',
11
+ operationId: 'get_region',
12
+ };
13
+ export const tool = {
14
+ name: 'get_regions',
15
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nGet a region by name\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/region',\n $defs: {\n region: {\n type: 'object',\n description: 'Region response with product availability.',\n properties: {\n availability: {\n $ref: '#/$defs/region_availability'\n },\n compute: {\n type: 'object',\n description: 'Compute products available in this region.',\n properties: {\n vms: {\n type: 'boolean',\n description: 'VMs indicates if Virtual Machines are available.'\n }\n },\n required: [ 'vms'\n ]\n },\n name: {\n type: 'string',\n description: 'Name of the region.'\n },\n networking: {\n type: 'object',\n description: 'Networking products available in this region.',\n properties: {\n connect: {\n type: 'boolean',\n description: 'Connect indicates if Nirvana Connect is available.'\n },\n vpcs: {\n type: 'boolean',\n description: 'VPCs indicates if Virtual Private Clouds are available.'\n }\n },\n required: [ 'connect',\n 'vpcs'\n ]\n },\n storage: {\n type: 'object',\n description: 'Storage products available in this region.',\n properties: {\n abs: {\n type: 'boolean',\n description: 'ABS indicates if Accelerated Block Storage is available.'\n },\n local_nvme: {\n type: 'boolean',\n description: 'LocalNVMe indicates if locally-attached NVMe storage is available.'\n }\n },\n required: [ 'abs',\n 'local_nvme'\n ]\n }\n },\n required: [ 'availability',\n 'compute',\n 'name',\n 'networking',\n 'storage'\n ]\n },\n region_availability: {\n type: 'string',\n description: 'Availability status of the region.',\n enum: [ 'live',\n 'preview',\n 'maintenance',\n 'sunset'\n ]\n }\n }\n}\n```",
16
+ inputSchema: {
17
+ type: 'object',
18
+ properties: {
19
+ region_name: {
20
+ type: 'string',
21
+ },
22
+ jq_filter: {
23
+ type: 'string',
24
+ title: 'jq Filter',
25
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
26
+ },
27
+ },
28
+ required: ['region_name'],
29
+ },
30
+ annotations: {
31
+ readOnlyHint: true,
32
+ },
33
+ };
34
+ export const handler = async (client, args) => {
35
+ const { region_name, jq_filter, ...body } = args;
36
+ try {
37
+ return asTextContentResult(await maybeFilter(jq_filter, await client.regions.get(region_name)));
38
+ }
39
+ catch (error) {
40
+ if (error instanceof NirvanaLabs.APIError || isJqError(error)) {
41
+ return asErrorResult(error.message);
42
+ }
43
+ throw error;
44
+ }
45
+ };
46
+ export default { metadata, tool, handler };
47
+ //# sourceMappingURL=get-regions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-regions.mjs","sourceRoot":"","sources":["../../src/tools/regions/get-regions.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qCAAqC;OACrE,EAAY,aAAa,EAAE,mBAAmB,EAAE,MAAM,uCAAuC;OAG7F,WAAW,MAAM,uBAAuB;AAE/C,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,2BAA2B;IACrC,WAAW,EAAE,YAAY;CAC1B,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,aAAa;IACnB,WAAW,EACT,k5EAAk5E;IACp5E,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;aACf;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAmB,EAAE,IAAyC,EAAE,EAAE;IAC9F,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IACxD,IAAI,CAAC;QACH,OAAO,mBAAmB,CAAC,MAAM,WAAW,CAAC,SAAS,EAAE,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAClG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,WAAW,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9D,OAAO,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { Metadata } from '@nirvana-labs/nirvana-mcp/tools/types';
2
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
3
+ import NirvanaLabs from '@nirvana-labs/nirvana';
4
+ export declare const metadata: Metadata;
5
+ export declare const tool: Tool;
6
+ export declare const handler: (client: NirvanaLabs, args: Record<string, unknown> | undefined) => Promise<import("@nirvana-labs/nirvana-mcp/tools/types").ToolCallResult>;
7
+ declare const _default: {
8
+ metadata: Metadata;
9
+ tool: {
10
+ inputSchema: {
11
+ [x: string]: unknown;
12
+ type: "object";
13
+ properties?: {
14
+ [x: string]: object;
15
+ } | undefined;
16
+ required?: string[] | undefined;
17
+ };
18
+ name: string;
19
+ description?: string | undefined;
20
+ outputSchema?: {
21
+ [x: string]: unknown;
22
+ type: "object";
23
+ properties?: {
24
+ [x: string]: object;
25
+ } | undefined;
26
+ required?: string[] | undefined;
27
+ } | undefined;
28
+ annotations?: {
29
+ title?: string | undefined;
30
+ readOnlyHint?: boolean | undefined;
31
+ destructiveHint?: boolean | undefined;
32
+ idempotentHint?: boolean | undefined;
33
+ openWorldHint?: boolean | undefined;
34
+ } | undefined;
35
+ execution?: {
36
+ taskSupport?: "optional" | "required" | "forbidden" | undefined;
37
+ } | undefined;
38
+ _meta?: {
39
+ [x: string]: unknown;
40
+ } | undefined;
41
+ icons?: {
42
+ src: string;
43
+ mimeType?: string | undefined;
44
+ sizes?: string[] | undefined;
45
+ }[] | undefined;
46
+ title?: string | undefined;
47
+ };
48
+ handler: (client: NirvanaLabs, args: Record<string, unknown> | undefined) => Promise<import("@nirvana-labs/nirvana-mcp/tools/types").ToolCallResult>;
49
+ };
50
+ export default _default;
51
+ //# sourceMappingURL=list-regions.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-regions.d.mts","sourceRoot":"","sources":["../../src/tools/regions/list-regions.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAsC,MAAM,uCAAuC;OAE7F,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,WAAW,MAAM,uBAAuB;AAE/C,eAAO,MAAM,QAAQ,EAAE,QAOtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA2BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,4EAW3F,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAXoC,WAAW,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAa5F,wBAA2C"}
@@ -0,0 +1,51 @@
1
+ import { Metadata } from '@nirvana-labs/nirvana-mcp/tools/types';
2
+ import { Tool } from '@modelcontextprotocol/sdk/types.js';
3
+ import NirvanaLabs from '@nirvana-labs/nirvana';
4
+ export declare const metadata: Metadata;
5
+ export declare const tool: Tool;
6
+ export declare const handler: (client: NirvanaLabs, args: Record<string, unknown> | undefined) => Promise<import("@nirvana-labs/nirvana-mcp/tools/types").ToolCallResult>;
7
+ declare const _default: {
8
+ metadata: Metadata;
9
+ tool: {
10
+ inputSchema: {
11
+ [x: string]: unknown;
12
+ type: "object";
13
+ properties?: {
14
+ [x: string]: object;
15
+ } | undefined;
16
+ required?: string[] | undefined;
17
+ };
18
+ name: string;
19
+ description?: string | undefined;
20
+ outputSchema?: {
21
+ [x: string]: unknown;
22
+ type: "object";
23
+ properties?: {
24
+ [x: string]: object;
25
+ } | undefined;
26
+ required?: string[] | undefined;
27
+ } | undefined;
28
+ annotations?: {
29
+ title?: string | undefined;
30
+ readOnlyHint?: boolean | undefined;
31
+ destructiveHint?: boolean | undefined;
32
+ idempotentHint?: boolean | undefined;
33
+ openWorldHint?: boolean | undefined;
34
+ } | undefined;
35
+ execution?: {
36
+ taskSupport?: "optional" | "required" | "forbidden" | undefined;
37
+ } | undefined;
38
+ _meta?: {
39
+ [x: string]: unknown;
40
+ } | undefined;
41
+ icons?: {
42
+ src: string;
43
+ mimeType?: string | undefined;
44
+ sizes?: string[] | undefined;
45
+ }[] | undefined;
46
+ title?: string | undefined;
47
+ };
48
+ handler: (client: NirvanaLabs, args: Record<string, unknown> | undefined) => Promise<import("@nirvana-labs/nirvana-mcp/tools/types").ToolCallResult>;
49
+ };
50
+ export default _default;
51
+ //# sourceMappingURL=list-regions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-regions.d.ts","sourceRoot":"","sources":["../../src/tools/regions/list-regions.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAsC,MAAM,uCAAuC;OAE7F,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,WAAW,MAAM,uBAAuB;AAE/C,eAAO,MAAM,QAAQ,EAAE,QAOtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA2BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,4EAW3F,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAXoC,WAAW,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAa5F,wBAA2C"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.handler = exports.tool = exports.metadata = void 0;
8
+ const filtering_1 = require("@nirvana-labs/nirvana-mcp/filtering");
9
+ const types_1 = require("@nirvana-labs/nirvana-mcp/tools/types");
10
+ const nirvana_1 = __importDefault(require("@nirvana-labs/nirvana"));
11
+ exports.metadata = {
12
+ resource: 'regions',
13
+ operation: 'read',
14
+ tags: [],
15
+ httpMethod: 'get',
16
+ httpPath: '/v1/regions',
17
+ operationId: 'list_regions',
18
+ };
19
+ exports.tool = {
20
+ name: 'list_regions',
21
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nList all regions\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/region_list',\n $defs: {\n region_list: {\n type: 'object',\n properties: {\n items: {\n type: 'array',\n items: {\n $ref: '#/$defs/region'\n }\n },\n pagination: {\n $ref: '#/$defs/pagination'\n }\n },\n required: [ 'items',\n 'pagination'\n ]\n },\n region: {\n type: 'object',\n description: 'Region response with product availability.',\n properties: {\n availability: {\n $ref: '#/$defs/region_availability'\n },\n compute: {\n type: 'object',\n description: 'Compute products available in this region.',\n properties: {\n vms: {\n type: 'boolean',\n description: 'VMs indicates if Virtual Machines are available.'\n }\n },\n required: [ 'vms'\n ]\n },\n name: {\n type: 'string',\n description: 'Name of the region.'\n },\n networking: {\n type: 'object',\n description: 'Networking products available in this region.',\n properties: {\n connect: {\n type: 'boolean',\n description: 'Connect indicates if Nirvana Connect is available.'\n },\n vpcs: {\n type: 'boolean',\n description: 'VPCs indicates if Virtual Private Clouds are available.'\n }\n },\n required: [ 'connect',\n 'vpcs'\n ]\n },\n storage: {\n type: 'object',\n description: 'Storage products available in this region.',\n properties: {\n abs: {\n type: 'boolean',\n description: 'ABS indicates if Accelerated Block Storage is available.'\n },\n local_nvme: {\n type: 'boolean',\n description: 'LocalNVMe indicates if locally-attached NVMe storage is available.'\n }\n },\n required: [ 'abs',\n 'local_nvme'\n ]\n }\n },\n required: [ 'availability',\n 'compute',\n 'name',\n 'networking',\n 'storage'\n ]\n },\n region_availability: {\n type: 'string',\n description: 'Availability status of the region.',\n enum: [ 'live',\n 'preview',\n 'maintenance',\n 'sunset'\n ]\n },\n pagination: {\n type: 'object',\n description: 'Pagination response details.',\n properties: {\n next_cursor: {\n type: 'string'\n },\n previous_cursor: {\n type: 'string'\n },\n total_count: {\n type: 'integer'\n }\n },\n required: [ 'next_cursor',\n 'previous_cursor',\n 'total_count'\n ]\n }\n }\n}\n```",
22
+ inputSchema: {
23
+ type: 'object',
24
+ properties: {
25
+ cursor: {
26
+ type: 'string',
27
+ description: 'Pagination cursor returned by a previous request',
28
+ },
29
+ limit: {
30
+ type: 'integer',
31
+ description: 'Maximum number of items to return',
32
+ },
33
+ jq_filter: {
34
+ type: 'string',
35
+ title: 'jq Filter',
36
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
37
+ },
38
+ },
39
+ required: [],
40
+ },
41
+ annotations: {
42
+ readOnlyHint: true,
43
+ },
44
+ };
45
+ const handler = async (client, args) => {
46
+ const { jq_filter, ...body } = args;
47
+ const response = await client.regions.list(body).asResponse();
48
+ try {
49
+ return (0, types_1.asTextContentResult)(await (0, filtering_1.maybeFilter)(jq_filter, await response.json()));
50
+ }
51
+ catch (error) {
52
+ if (error instanceof nirvana_1.default.APIError || (0, filtering_1.isJqError)(error)) {
53
+ return (0, types_1.asErrorResult)(error.message);
54
+ }
55
+ throw error;
56
+ }
57
+ };
58
+ exports.handler = handler;
59
+ exports.default = { metadata: exports.metadata, tool: exports.tool, handler: exports.handler };
60
+ //# sourceMappingURL=list-regions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-regions.js","sourceRoot":"","sources":["../../src/tools/regions/list-regions.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;;;;AAEtF,mEAA6E;AAC7E,iEAAqG;AAGrG,oEAAgD;AAEnC,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,aAAa;IACvB,WAAW,EAAE,cAAc;CAC5B,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,cAAc;IACpB,WAAW,EACT,opGAAopG;IACtpG,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kDAAkD;aAChE;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,mCAAmC;aACjD;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,EAAE;KACb;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAmB,EAAE,IAAyC,EAAE,EAAE;IAC9F,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IAC3C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;IAC9D,IAAI,CAAC;QACH,OAAO,IAAA,2BAAmB,EAAC,MAAM,IAAA,uBAAW,EAAC,SAAS,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,iBAAW,CAAC,QAAQ,IAAI,IAAA,qBAAS,EAAC,KAAK,CAAC,EAAE,CAAC;YAC9D,OAAO,IAAA,qBAAa,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAXW,QAAA,OAAO,WAWlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
@@ -0,0 +1,53 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { isJqError, maybeFilter } from '@nirvana-labs/nirvana-mcp/filtering';
3
+ import { asErrorResult, asTextContentResult } from '@nirvana-labs/nirvana-mcp/tools/types';
4
+ import NirvanaLabs from '@nirvana-labs/nirvana';
5
+ export const metadata = {
6
+ resource: 'regions',
7
+ operation: 'read',
8
+ tags: [],
9
+ httpMethod: 'get',
10
+ httpPath: '/v1/regions',
11
+ operationId: 'list_regions',
12
+ };
13
+ export const tool = {
14
+ name: 'list_regions',
15
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nList all regions\n\n# Response Schema\n```json\n{\n $ref: '#/$defs/region_list',\n $defs: {\n region_list: {\n type: 'object',\n properties: {\n items: {\n type: 'array',\n items: {\n $ref: '#/$defs/region'\n }\n },\n pagination: {\n $ref: '#/$defs/pagination'\n }\n },\n required: [ 'items',\n 'pagination'\n ]\n },\n region: {\n type: 'object',\n description: 'Region response with product availability.',\n properties: {\n availability: {\n $ref: '#/$defs/region_availability'\n },\n compute: {\n type: 'object',\n description: 'Compute products available in this region.',\n properties: {\n vms: {\n type: 'boolean',\n description: 'VMs indicates if Virtual Machines are available.'\n }\n },\n required: [ 'vms'\n ]\n },\n name: {\n type: 'string',\n description: 'Name of the region.'\n },\n networking: {\n type: 'object',\n description: 'Networking products available in this region.',\n properties: {\n connect: {\n type: 'boolean',\n description: 'Connect indicates if Nirvana Connect is available.'\n },\n vpcs: {\n type: 'boolean',\n description: 'VPCs indicates if Virtual Private Clouds are available.'\n }\n },\n required: [ 'connect',\n 'vpcs'\n ]\n },\n storage: {\n type: 'object',\n description: 'Storage products available in this region.',\n properties: {\n abs: {\n type: 'boolean',\n description: 'ABS indicates if Accelerated Block Storage is available.'\n },\n local_nvme: {\n type: 'boolean',\n description: 'LocalNVMe indicates if locally-attached NVMe storage is available.'\n }\n },\n required: [ 'abs',\n 'local_nvme'\n ]\n }\n },\n required: [ 'availability',\n 'compute',\n 'name',\n 'networking',\n 'storage'\n ]\n },\n region_availability: {\n type: 'string',\n description: 'Availability status of the region.',\n enum: [ 'live',\n 'preview',\n 'maintenance',\n 'sunset'\n ]\n },\n pagination: {\n type: 'object',\n description: 'Pagination response details.',\n properties: {\n next_cursor: {\n type: 'string'\n },\n previous_cursor: {\n type: 'string'\n },\n total_count: {\n type: 'integer'\n }\n },\n required: [ 'next_cursor',\n 'previous_cursor',\n 'total_count'\n ]\n }\n }\n}\n```",
16
+ inputSchema: {
17
+ type: 'object',
18
+ properties: {
19
+ cursor: {
20
+ type: 'string',
21
+ description: 'Pagination cursor returned by a previous request',
22
+ },
23
+ limit: {
24
+ type: 'integer',
25
+ description: 'Maximum number of items to return',
26
+ },
27
+ jq_filter: {
28
+ type: 'string',
29
+ title: 'jq Filter',
30
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
31
+ },
32
+ },
33
+ required: [],
34
+ },
35
+ annotations: {
36
+ readOnlyHint: true,
37
+ },
38
+ };
39
+ export const handler = async (client, args) => {
40
+ const { jq_filter, ...body } = args;
41
+ const response = await client.regions.list(body).asResponse();
42
+ try {
43
+ return asTextContentResult(await maybeFilter(jq_filter, await response.json()));
44
+ }
45
+ catch (error) {
46
+ if (error instanceof NirvanaLabs.APIError || isJqError(error)) {
47
+ return asErrorResult(error.message);
48
+ }
49
+ throw error;
50
+ }
51
+ };
52
+ export default { metadata, tool, handler };
53
+ //# sourceMappingURL=list-regions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-regions.mjs","sourceRoot":"","sources":["../../src/tools/regions/list-regions.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qCAAqC;OACrE,EAAY,aAAa,EAAE,mBAAmB,EAAE,MAAM,uCAAuC;OAG7F,WAAW,MAAM,uBAAuB;AAE/C,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,aAAa;IACvB,WAAW,EAAE,cAAc;CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,cAAc;IACpB,WAAW,EACT,opGAAopG;IACtpG,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,kDAAkD;aAChE;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,mCAAmC;aACjD;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,EAAE;KACb;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAmB,EAAE,IAAyC,EAAE,EAAE;IAC9F,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAW,CAAC;IAC3C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;IAC9D,IAAI,CAAC;QACH,OAAO,mBAAmB,CAAC,MAAM,WAAW,CAAC,SAAS,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,WAAW,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9D,OAAO,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}