Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
"@clerk/themes": "^2.4.19",
"@mcp-ui/server": "^5.10.0",
"@modelcontextprotocol/sdk": "1.26.0",
"@onkernel/sdk": "^0.60.0",
"@onkernel/sdk": "^0.72.0",
"@types/jsonwebtoken": "^9.0.10",
"@types/redis": "^4.0.11",
"builtin-modules": "^5.0.0",
Expand Down
17 changes: 7 additions & 10 deletions src/lib/mcp/tools/browser-pools.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,10 @@ type BrowserPoolAcquireResponse = Awaited<
ReturnType<KernelClient["browserPools"]["acquire"]>
>;

type PoolConfigParams = BrowserCreateConfigParams & {
type PoolConfigParams = Omit<
BrowserCreateConfigParams,
"save_profile_changes"
> & {
size?: number;
name?: string;
headless?: boolean;
Expand Down Expand Up @@ -159,14 +162,14 @@ export function registerBrowserPoolCapabilities(server: McpServer) {
}

const client = createKernelClient(extra.authInfo.token);
const pools = await client.browserPools.list();
const pools = (await client.browserPools.list())?.items ?? [];
return {
contents: [
{
uri: uri.toString(),
mimeType: "application/json",
text:
pools && pools.length > 0
pools.length > 0
? JSON.stringify(pools.map(summarizeBrowserPool), null, 2)
: "No browser pools found",
},
Expand Down Expand Up @@ -245,12 +248,6 @@ export function registerBrowserPoolCapabilities(server: McpServer) {
"(create, update) Profile ID to load into pool browsers. Cannot use with profile_name.",
)
.optional(),
save_profile_changes: z
.boolean()
.describe(
"(create, update) Save browser changes back to the selected profile when sessions end.",
)
.optional(),
proxy_id: z
.string()
.describe("(create, update) Proxy for pool browsers.")
Expand Down Expand Up @@ -391,7 +388,7 @@ export function registerBrowserPoolCapabilities(server: McpServer) {
});
}
case "list": {
const pools = (await client.browserPools.list()) ?? [];
const pools = (await client.browserPools.list())?.items ?? [];
return pools.length > 0
? jsonResponse({
items: pools.map(summarizeBrowserPool),
Expand Down
2 changes: 1 addition & 1 deletion src/lib/mcp/tools/credentials.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ export function registerCredentialTools(server: McpServer) {
)
.optional(),
values: z
.record(z.string())
.record(z.string(), z.string())
.describe(
"(create, update) Field name to value mapping (e.g. username, password). On update, merged with existing values.",
)
Expand Down
8 changes: 4 additions & 4 deletions src/lib/mcp/tools/extensions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ export function registerExtensionTools(server: McpServer) {
try {
switch (params.action) {
case "list": {
const extensions = await client.extensions.list();
return itemsJsonResponse(extensions ?? [], {
has_more: false,
next_offset: null,
const page = await client.extensions.list();
return itemsJsonResponse(page?.items ?? [], {
has_more: page?.has_more ?? false,
next_offset: page?.next_offset ?? null,
Comment thread
cursor[bot] marked this conversation as resolved.
emptyText: "No extensions found",
});
}
Expand Down
8 changes: 4 additions & 4 deletions src/lib/mcp/tools/proxies.ts
Original file line number Diff line number Diff line change
Expand Up @@ -134,10 +134,10 @@ export function registerProxyTools(server: McpServer) {
return jsonResponse(proxy);
}
case "list": {
const proxies = await client.proxies.list();
return itemsJsonResponse(proxies ?? [], {
has_more: false,
next_offset: null,
const page = await client.proxies.list();
return itemsJsonResponse(page?.items ?? [], {
has_more: page?.has_more ?? false,
next_offset: page?.next_offset ?? null,
emptyText: "No proxies found",
});
}
Expand Down
Loading