@nirvana-labs/nirvana-mcp 1.66.0 → 1.68.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/code-tool-worker.d.mts.map +1 -1
- package/code-tool-worker.d.ts.map +1 -1
- package/code-tool-worker.js +1 -0
- package/code-tool-worker.js.map +1 -1
- package/code-tool-worker.mjs +1 -0
- package/code-tool-worker.mjs.map +1 -1
- package/local-docs-search.d.mts.map +1 -1
- package/local-docs-search.d.ts.map +1 -1
- package/local-docs-search.js +39 -10
- package/local-docs-search.js.map +1 -1
- package/local-docs-search.mjs +39 -10
- package/local-docs-search.mjs.map +1 -1
- package/methods.d.mts.map +1 -1
- package/methods.d.ts.map +1 -1
- package/methods.js +6 -0
- package/methods.js.map +1 -1
- package/methods.mjs +6 -0
- package/methods.mjs.map +1 -1
- package/package.json +2 -2
- package/server.js +1 -1
- package/server.mjs +1 -1
- package/src/code-tool-worker.ts +1 -0
- package/src/local-docs-search.ts +45 -10
- package/src/methods.ts +6 -0
- package/src/server.ts +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nirvana-labs/nirvana-mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.68.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.
|
|
21
|
+
"@nirvana-labs/nirvana": "^1.68.0",
|
|
22
22
|
"ajv": "^8.18.0",
|
|
23
23
|
"@cloudflare/cabidela": "^0.2.4",
|
|
24
24
|
"@hono/node-server": "^1.19.10",
|
package/server.js
CHANGED
|
@@ -19,7 +19,7 @@ const instructions_1 = require("./instructions.js");
|
|
|
19
19
|
const methods_1 = require("./methods.js");
|
|
20
20
|
const newMcpServer = async ({ stainlessApiKey, customInstructionsPath, }) => new mcp_js_1.McpServer({
|
|
21
21
|
name: 'nirvana_labs_nirvana_api',
|
|
22
|
-
version: '1.
|
|
22
|
+
version: '1.68.0',
|
|
23
23
|
}, {
|
|
24
24
|
instructions: await (0, instructions_1.getInstructions)({ stainlessApiKey, customInstructionsPath }),
|
|
25
25
|
capabilities: { tools: {}, logging: {} },
|
package/server.mjs
CHANGED
|
@@ -10,7 +10,7 @@ import { getInstructions } from "./instructions.mjs";
|
|
|
10
10
|
import { blockedMethodsForCodeTool } from "./methods.mjs";
|
|
11
11
|
export const newMcpServer = async ({ stainlessApiKey, customInstructionsPath, }) => new McpServer({
|
|
12
12
|
name: 'nirvana_labs_nirvana_api',
|
|
13
|
-
version: '1.
|
|
13
|
+
version: '1.68.0',
|
|
14
14
|
}, {
|
|
15
15
|
instructions: await getInstructions({ stainlessApiKey, customInstructionsPath }),
|
|
16
16
|
capabilities: { tools: {}, logging: {} },
|
package/src/code-tool-worker.ts
CHANGED
package/src/local-docs-search.ts
CHANGED
|
@@ -411,9 +411,9 @@ const EMBEDDED_METHODS: MethodEntry[] = [
|
|
|
411
411
|
qualified: 'client.organizations.create',
|
|
412
412
|
params: ['name: string;'],
|
|
413
413
|
response:
|
|
414
|
-
|
|
414
|
+
'{ id: string; created_at: string; domains: { id: string; domain: string; verified: boolean; }[]; name: string; personal: boolean; services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }; updated_at: string; auth_id?: string; }',
|
|
415
415
|
markdown:
|
|
416
|
-
"## create\n\n`client.organizations.create(name: string): { id: string; created_at: string; domains: organization_domain[];
|
|
416
|
+
"## create\n\n`client.organizations.create(name: string): { id: string; created_at: string; domains: organization_domain[]; name: string; personal: boolean; services: organization_services; updated_at: string; auth_id?: string; }`\n\n**post** `/v1/organizations`\n\nCreate a new organization\n\n### Parameters\n\n- `name: string`\n Organization name.\n\n### Returns\n\n- `{ id: string; created_at: string; domains: { id: string; domain: string; verified: boolean; }[]; name: string; personal: boolean; services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }; updated_at: string; auth_id?: string; }`\n Organization response.\n\n - `id: string`\n - `created_at: string`\n - `domains: { id: string; domain: string; verified: boolean; }[]`\n - `name: string`\n - `personal: boolean`\n - `services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }`\n - `updated_at: string`\n - `auth_id?: string`\n\n### Example\n\n```typescript\nimport NirvanaLabs from '@nirvana-labs/nirvana';\n\nconst client = new NirvanaLabs();\n\nconst organization = await client.organizations.create({ name: 'My Organization' });\n\nconsole.log(organization);\n```",
|
|
417
417
|
perLanguage: {
|
|
418
418
|
cli: {
|
|
419
419
|
method: 'organizations create',
|
|
@@ -445,9 +445,9 @@ const EMBEDDED_METHODS: MethodEntry[] = [
|
|
|
445
445
|
qualified: 'client.organizations.get',
|
|
446
446
|
params: ['organization_id: string;'],
|
|
447
447
|
response:
|
|
448
|
-
|
|
448
|
+
'{ id: string; created_at: string; domains: { id: string; domain: string; verified: boolean; }[]; name: string; personal: boolean; services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }; updated_at: string; auth_id?: string; }',
|
|
449
449
|
markdown:
|
|
450
|
-
"## get\n\n`client.organizations.get(organization_id: string): { id: string; created_at: string; domains: organization_domain[];
|
|
450
|
+
"## get\n\n`client.organizations.get(organization_id: string): { id: string; created_at: string; domains: organization_domain[]; name: string; personal: boolean; services: organization_services; updated_at: string; auth_id?: string; }`\n\n**get** `/v1/organizations/{organization_id}`\n\nGet details about an Organization\n\n### Parameters\n\n- `organization_id: string`\n\n### Returns\n\n- `{ id: string; created_at: string; domains: { id: string; domain: string; verified: boolean; }[]; name: string; personal: boolean; services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }; updated_at: string; auth_id?: string; }`\n Organization response.\n\n - `id: string`\n - `created_at: string`\n - `domains: { id: string; domain: string; verified: boolean; }[]`\n - `name: string`\n - `personal: boolean`\n - `services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }`\n - `updated_at: string`\n - `auth_id?: string`\n\n### Example\n\n```typescript\nimport NirvanaLabs from '@nirvana-labs/nirvana';\n\nconst client = new NirvanaLabs();\n\nconst organization = await client.organizations.get('organization_id');\n\nconsole.log(organization);\n```",
|
|
451
451
|
perLanguage: {
|
|
452
452
|
cli: {
|
|
453
453
|
method: 'organizations get',
|
|
@@ -480,9 +480,9 @@ const EMBEDDED_METHODS: MethodEntry[] = [
|
|
|
480
480
|
qualified: 'client.organizations.update',
|
|
481
481
|
params: ['organization_id: string;', 'name?: string;'],
|
|
482
482
|
response:
|
|
483
|
-
|
|
483
|
+
'{ id: string; created_at: string; domains: { id: string; domain: string; verified: boolean; }[]; name: string; personal: boolean; services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }; updated_at: string; auth_id?: string; }',
|
|
484
484
|
markdown:
|
|
485
|
-
"## update\n\n`client.organizations.update(organization_id: string, name?: string): { id: string; created_at: string; domains: organization_domain[];
|
|
485
|
+
"## update\n\n`client.organizations.update(organization_id: string, name?: string): { id: string; created_at: string; domains: organization_domain[]; name: string; personal: boolean; services: organization_services; updated_at: string; auth_id?: string; }`\n\n**patch** `/v1/organizations/{organization_id}`\n\nUpdate an existing organization\n\n### Parameters\n\n- `organization_id: string`\n\n- `name?: string`\n Organization name.\n\n### Returns\n\n- `{ id: string; created_at: string; domains: { id: string; domain: string; verified: boolean; }[]; name: string; personal: boolean; services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }; updated_at: string; auth_id?: string; }`\n Organization response.\n\n - `id: string`\n - `created_at: string`\n - `domains: { id: string; domain: string; verified: boolean; }[]`\n - `name: string`\n - `personal: boolean`\n - `services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }`\n - `updated_at: string`\n - `auth_id?: string`\n\n### Example\n\n```typescript\nimport NirvanaLabs from '@nirvana-labs/nirvana';\n\nconst client = new NirvanaLabs();\n\nconst organization = await client.organizations.update('organization_id');\n\nconsole.log(organization);\n```",
|
|
486
486
|
perLanguage: {
|
|
487
487
|
cli: {
|
|
488
488
|
method: 'organizations update',
|
|
@@ -515,9 +515,9 @@ const EMBEDDED_METHODS: MethodEntry[] = [
|
|
|
515
515
|
qualified: 'client.organizations.list',
|
|
516
516
|
params: ['cursor?: string;', 'limit?: number;'],
|
|
517
517
|
response:
|
|
518
|
-
|
|
518
|
+
'{ id: string; created_at: string; domains: { id: string; domain: string; verified: boolean; }[]; name: string; personal: boolean; services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }; updated_at: string; auth_id?: string; }',
|
|
519
519
|
markdown:
|
|
520
|
-
"## list\n\n`client.organizations.list(cursor?: string, limit?: number): { id: string; created_at: string; domains: organization_domain[];
|
|
520
|
+
"## list\n\n`client.organizations.list(cursor?: string, limit?: number): { id: string; created_at: string; domains: organization_domain[]; name: string; personal: boolean; services: organization_services; updated_at: string; auth_id?: string; }`\n\n**get** `/v1/organizations`\n\nList organizations\n\n### Parameters\n\n- `cursor?: string`\n Pagination cursor returned by a previous request\n\n- `limit?: number`\n Maximum number of items to return\n\n### Returns\n\n- `{ id: string; created_at: string; domains: { id: string; domain: string; verified: boolean; }[]; name: string; personal: boolean; services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }; updated_at: string; auth_id?: string; }`\n Organization response.\n\n - `id: string`\n - `created_at: string`\n - `domains: { id: string; domain: string; verified: boolean; }[]`\n - `name: string`\n - `personal: boolean`\n - `services: { cloud: boolean; jit_provisioning: boolean; scim: boolean; siem: boolean; sso: boolean; }`\n - `updated_at: string`\n - `auth_id?: string`\n\n### Example\n\n```typescript\nimport NirvanaLabs from '@nirvana-labs/nirvana';\n\nconst client = new NirvanaLabs();\n\n// Automatically fetches more pages as needed.\nfor await (const organization of client.organizations.list()) {\n console.log(organization);\n}\n```",
|
|
521
521
|
perLanguage: {
|
|
522
522
|
cli: {
|
|
523
523
|
method: 'organizations list',
|
|
@@ -946,6 +946,41 @@ const EMBEDDED_METHODS: MethodEntry[] = [
|
|
|
946
946
|
},
|
|
947
947
|
},
|
|
948
948
|
},
|
|
949
|
+
{
|
|
950
|
+
name: 'get',
|
|
951
|
+
endpoint: '/v1/instance_types/{region}/{name}',
|
|
952
|
+
httpMethod: 'get',
|
|
953
|
+
summary: 'Get Instance Type',
|
|
954
|
+
description: 'Get an instance type by region and name',
|
|
955
|
+
stainlessPath: '(resource) instance_types > (method) get',
|
|
956
|
+
qualified: 'client.instanceTypes.get',
|
|
957
|
+
params: ["region: 'us-sva-1' | 'us-sva-2' | 'us-chi-1' | 'us-wdc-1';", 'name: string;'],
|
|
958
|
+
response:
|
|
959
|
+
"{ chipset: string; created_at: string; memory_gi: number; name: string; region: 'us-sva-1' | 'us-sva-2' | 'us-chi-1' | 'us-wdc-1'; updated_at: string; vcpu: number; }",
|
|
960
|
+
markdown:
|
|
961
|
+
"## get\n\n`client.instanceTypes.get(region: 'us-sva-1' | 'us-sva-2' | 'us-chi-1' | 'us-wdc-1', name: string): { chipset: string; created_at: string; memory_gi: number; name: string; region: region_name; updated_at: string; vcpu: number; }`\n\n**get** `/v1/instance_types/{region}/{name}`\n\nGet an instance type by region and name\n\n### Parameters\n\n- `region: 'us-sva-1' | 'us-sva-2' | 'us-chi-1' | 'us-wdc-1'`\n\n- `name: string`\n\n### Returns\n\n- `{ chipset: string; created_at: string; memory_gi: number; name: string; region: 'us-sva-1' | 'us-sva-2' | 'us-chi-1' | 'us-wdc-1'; updated_at: string; vcpu: number; }`\n Instance type.\n\n - `chipset: string`\n - `created_at: string`\n - `memory_gi: number`\n - `name: string`\n - `region: 'us-sva-1' | 'us-sva-2' | 'us-chi-1' | 'us-wdc-1'`\n - `updated_at: string`\n - `vcpu: number`\n\n### Example\n\n```typescript\nimport NirvanaLabs from '@nirvana-labs/nirvana';\n\nconst client = new NirvanaLabs();\n\nconst instanceType = await client.instanceTypes.get('n1-standard-8', { region: 'us-sva-2' });\n\nconsole.log(instanceType);\n```",
|
|
962
|
+
perLanguage: {
|
|
963
|
+
cli: {
|
|
964
|
+
method: 'instance_types get',
|
|
965
|
+
example:
|
|
966
|
+
"nirvana instance-types get \\\n --api-key 'My API Key' \\\n --region us-sva-2 \\\n --name n1-standard-8",
|
|
967
|
+
},
|
|
968
|
+
go: {
|
|
969
|
+
method: 'client.InstanceTypes.Get',
|
|
970
|
+
example:
|
|
971
|
+
'package main\n\nimport (\n\t"context"\n\t"fmt"\n\n\t"github.com/nirvana-labs/nirvana-go"\n\t"github.com/nirvana-labs/nirvana-go/instance_types"\n\t"github.com/nirvana-labs/nirvana-go/option"\n)\n\nfunc main() {\n\tclient := nirvana.NewClient(\n\t\toption.WithAPIKey("My API Key"),\n\t)\n\tinstanceType, err := client.InstanceTypes.Get(\n\t\tcontext.TODO(),\n\t\tinstance_types.InstanceTypeGetParamsRegionUsSva2,\n\t\t"n1-standard-8",\n\t)\n\tif err != nil {\n\t\tpanic(err.Error())\n\t}\n\tfmt.Printf("%+v\\n", instanceType.Chipset)\n}\n',
|
|
972
|
+
},
|
|
973
|
+
http: {
|
|
974
|
+
example:
|
|
975
|
+
'curl https://api.nirvanalabs.io/v1/instance_types/$REGION/$NAME \\\n -H "Authorization: Bearer $NIRVANA_LABS_API_KEY"',
|
|
976
|
+
},
|
|
977
|
+
typescript: {
|
|
978
|
+
method: 'client.instanceTypes.get',
|
|
979
|
+
example:
|
|
980
|
+
"import NirvanaLabs from '@nirvana-labs/nirvana';\n\nconst client = new NirvanaLabs({\n apiKey: process.env['NIRVANA_LABS_API_KEY'], // This is the default and can be omitted\n});\n\nconst instanceType = await client.instanceTypes.get('n1-standard-8', { region: 'us-sva-2' });\n\nconsole.log(instanceType.chipset);",
|
|
981
|
+
},
|
|
982
|
+
},
|
|
983
|
+
},
|
|
949
984
|
{
|
|
950
985
|
name: 'list',
|
|
951
986
|
endpoint: '/v1/instance_types',
|
|
@@ -956,9 +991,9 @@ const EMBEDDED_METHODS: MethodEntry[] = [
|
|
|
956
991
|
qualified: 'client.instanceTypes.list',
|
|
957
992
|
params: ['cursor?: string;', 'limit?: number;'],
|
|
958
993
|
response:
|
|
959
|
-
|
|
994
|
+
"{ chipset: string; created_at: string; memory_gi: number; name: string; region: 'us-sva-1' | 'us-sva-2' | 'us-chi-1' | 'us-wdc-1'; updated_at: string; vcpu: number; }",
|
|
960
995
|
markdown:
|
|
961
|
-
"## list\n\n`client.instanceTypes.list(cursor?: string, limit?: number): { chipset: string; created_at: string; memory_gi: number; name: string; region:
|
|
996
|
+
"## list\n\n`client.instanceTypes.list(cursor?: string, limit?: number): { chipset: string; created_at: string; memory_gi: number; name: string; region: region_name; updated_at: string; vcpu: number; }`\n\n**get** `/v1/instance_types`\n\nList instance types\n\n### Parameters\n\n- `cursor?: string`\n Pagination cursor returned by a previous request\n\n- `limit?: number`\n Maximum number of items to return\n\n### Returns\n\n- `{ chipset: string; created_at: string; memory_gi: number; name: string; region: 'us-sva-1' | 'us-sva-2' | 'us-chi-1' | 'us-wdc-1'; updated_at: string; vcpu: number; }`\n Instance type.\n\n - `chipset: string`\n - `created_at: string`\n - `memory_gi: number`\n - `name: string`\n - `region: 'us-sva-1' | 'us-sva-2' | 'us-chi-1' | 'us-wdc-1'`\n - `updated_at: string`\n - `vcpu: number`\n\n### Example\n\n```typescript\nimport NirvanaLabs from '@nirvana-labs/nirvana';\n\nconst client = new NirvanaLabs();\n\n// Automatically fetches more pages as needed.\nfor await (const instanceType of client.instanceTypes.list()) {\n console.log(instanceType);\n}\n```",
|
|
962
997
|
perLanguage: {
|
|
963
998
|
cli: {
|
|
964
999
|
method: 'instance_types list',
|
package/src/methods.ts
CHANGED
|
@@ -172,6 +172,12 @@ export const sdkMethods: SdkMethod[] = [
|
|
|
172
172
|
httpMethod: 'get',
|
|
173
173
|
httpPath: '/v1/instance_types',
|
|
174
174
|
},
|
|
175
|
+
{
|
|
176
|
+
clientCallName: 'client.instanceTypes.get',
|
|
177
|
+
fullyQualifiedName: 'instanceTypes.get',
|
|
178
|
+
httpMethod: 'get',
|
|
179
|
+
httpPath: '/v1/instance_types/{region}/{name}',
|
|
180
|
+
},
|
|
175
181
|
{
|
|
176
182
|
clientCallName: 'client.compute.vms.create',
|
|
177
183
|
fullyQualifiedName: 'compute.vms.create',
|
package/src/server.ts
CHANGED