diff options
Diffstat (limited to 'packages/sdk')
| -rw-r--r-- | packages/sdk/js/src/v2/gen/sdk.gen.ts | 28 | ||||
| -rw-r--r-- | packages/sdk/js/src/v2/gen/types.gen.ts | 38 | ||||
| -rw-r--r-- | packages/sdk/openapi.json | 40 |
3 files changed, 104 insertions, 2 deletions
diff --git a/packages/sdk/js/src/v2/gen/sdk.gen.ts b/packages/sdk/js/src/v2/gen/sdk.gen.ts index 01de8c183..81d50b28e 100644 --- a/packages/sdk/js/src/v2/gen/sdk.gen.ts +++ b/packages/sdk/js/src/v2/gen/sdk.gen.ts @@ -21,6 +21,7 @@ import type { EventTuiPromptAppend, EventTuiSessionSelect, EventTuiToastShow, + ExperimentalResourceListResponses, FileListResponses, FilePartInput, FileReadResponses, @@ -2431,6 +2432,31 @@ export class Mcp extends HeyApiClient { auth = new Auth({ client: this.client }) } +export class Resource extends HeyApiClient { + /** + * Get MCP resources + * + * Get all available MCP resources from connected servers. Optionally filter by name. + */ + public list<ThrowOnError extends boolean = false>( + parameters?: { + directory?: string + }, + options?: Options<never, ThrowOnError>, + ) { + const params = buildClientParams([parameters], [{ args: [{ in: "query", key: "directory" }] }]) + return (options?.client ?? this.client).get<ExperimentalResourceListResponses, unknown, ThrowOnError>({ + url: "/experimental/resource", + ...options, + ...params, + }) + } +} + +export class Experimental extends HeyApiClient { + resource = new Resource({ client: this.client }) +} + export class Lsp extends HeyApiClient { /** * Get LSP status @@ -2873,6 +2899,8 @@ export class OpencodeClient extends HeyApiClient { mcp = new Mcp({ client: this.client }) + experimental = new Experimental({ client: this.client }) + lsp = new Lsp({ client: this.client }) formatter = new Formatter({ client: this.client }) diff --git a/packages/sdk/js/src/v2/gen/types.gen.ts b/packages/sdk/js/src/v2/gen/types.gen.ts index e42d2ed22..5ca8fa8f6 100644 --- a/packages/sdk/js/src/v2/gen/types.gen.ts +++ b/packages/sdk/js/src/v2/gen/types.gen.ts @@ -252,7 +252,14 @@ export type SymbolSource = { kind: number } -export type FilePartSource = FileSource | SymbolSource +export type ResourceSource = { + text: FilePartSourceText + type: "resource" + clientName: string + uri: string +} + +export type FilePartSource = FileSource | SymbolSource | ResourceSource export type FilePart = { id: string @@ -1953,6 +1960,14 @@ export type McpStatus = | McpStatusNeedsAuth | McpStatusNeedsClientRegistration +export type McpResource = { + name: string + uri: string + description?: string + mimeType?: string + client: string +} + export type LspStatus = { id: string name: string @@ -4155,6 +4170,27 @@ export type McpDisconnectResponses = { export type McpDisconnectResponse = McpDisconnectResponses[keyof McpDisconnectResponses] +export type ExperimentalResourceListData = { + body?: never + path?: never + query?: { + directory?: string + } + url: "/experimental/resource" +} + +export type ExperimentalResourceListResponses = { + /** + * MCP resources + */ + 200: { + [key: string]: McpResource + } +} + +export type ExperimentalResourceListResponse = + ExperimentalResourceListResponses[keyof ExperimentalResourceListResponses] + export type LspStatusData = { body?: never path?: never diff --git a/packages/sdk/openapi.json b/packages/sdk/openapi.json index bcfc98e11..596c1bd28 100644 --- a/packages/sdk/openapi.json +++ b/packages/sdk/openapi.json @@ -4541,6 +4541,44 @@ ] } }, + "/mcp/resources": { + "get": { + "operationId": "mcp.resources", + "parameters": [ + { + "in": "query", + "name": "directory", + "schema": { + "type": "string" + } + } + ], + "summary": "Get MCP resources", + "description": "Get all available MCP resources from connected servers.", + "responses": { + "200": { + "description": "MCP resources", + "content": { + "application/json": { + "schema": { + "type": "object", + "propertyNames": { + "type": "string" + }, + "additionalProperties": {} + } + } + } + } + }, + "x-codeSamples": [ + { + "lang": "js", + "source": "import { createOpencodeClient } from \"@opencode-ai/sdk\n\nconst client = createOpencodeClient()\nawait client.mcp.resources({\n ...\n})" + } + ] + } + }, "/lsp": { "get": { "operationId": "lsp.status", @@ -9842,7 +9880,7 @@ "maximum": 9007199254740991 } }, - "required": ["name", "mode", "permission", "options"] + "required": ["name", "mode", "builtIn", "permission", "options"] }, "MCPStatusConnected": { "type": "object", |
