Skip to content
Merged
Changes from all commits
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
19 changes: 12 additions & 7 deletions integrations/vercel/eve-extension.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ You can authenticate through [Vercel Connect](https://vercel.com/connect) or wit
npx eve@latest init my-agent && cd my-agent
```
- A [Kernel account](https://dashboard.onkernel.com), with either a Vercel Connect Kernel connector (recommended path below) or a Kernel API key
- For the Connect path, **Vercel CLI `>= 58.8.0`**, which is where `--connection-method` landed. Older CLIs reject the flag.

## Setup with Vercel Connect (recommended)

Expand All @@ -34,22 +35,22 @@ Vercel Connect is the recommended path because:
pnpm add @onkernel/eve-extension
```

**2. Create and attach the Kernel connector** in Vercel Connect. Name it `eve-extension` so the mount snippet works unedited:
**2. Create and attach the Kernel connector** in Vercel Connect. Name it `kernel-mcp` so the mount snippet works unedited:

```bash
vercel connect create mcp.onkernel.com --name eve-extension
vercel connect attach mcp.onkernel.com/eve-extension
vercel connect create kernel --name kernel-mcp --connection-method mcp
vercel connect attach kernel/kernel-mcp
```

You can also add it from the Vercel dashboard under **Connectors → Browse allKernel**. Confirm the UID with `vercel connect list`.
You can also add it from the Vercel dashboard under [**Connectors → Browse all**](https://vercel.com/onkernel/~/connect/browse): look up "Kernel" and choose **MCP**. Confirm the UID with `vercel connect list`.

**3. Mount the extension** in one line, passing the connector UID:

```typescript
// agent/extensions/kernel.ts
import kernel from "@onkernel/eve-extension";

export default kernel({ connect: "mcp.onkernel.com/eve-extension" });
export default kernel({ connect: "kernel/kernel-mcp" });
```

**4. Run it:**
Expand All @@ -60,6 +61,10 @@ npx eve dev # or: npx eve deploy

Leave `KERNEL_API_KEY` unset. The first time a user drives the browser, Eve surfaces a Connect consent prompt; they approve once and it's cached from then on, persisting across threads and sessions.

<Note>
Connectors created before Kernel was in the registry keep working. Leave them as they are and point `connect` at the UID `vercel connect list` prints for them, e.g. `mcp.onkernel.com/eve-extension`.
</Note>

## Included tools and skills

Once mounted, the agent has the following tools, namespaced under your mount (e.g. `kernel__browser__*`; discover the exact names via `connection_search`):
Expand Down Expand Up @@ -150,7 +155,7 @@ Mount the extension as a directory and name the connection file `browser.ts` to

```
agent/extensions/kernel/
extension.ts # export default kernel({ connect: "mcp.onkernel.com/eve-extension" })
extension.ts # export default kernel({ connect: "kernel/kernel-mcp" })
connections/browser.ts # shadows the extension's "browser" connection
```

Expand All @@ -163,7 +168,7 @@ import { always } from "eve/tools/approval";
export default defineMcpClientConnection({
url: "https://mcp.onkernel.com/mcp",
description: "Kernel cloud browser.",
auth: connect("mcp.onkernel.com/eve-extension"), // or { getToken: async () => ({ token: process.env.KERNEL_API_KEY! }) }
auth: connect("kernel/kernel-mcp"), // or { getToken: async () => ({ token: process.env.KERNEL_API_KEY! }) }
tools: {
allow: [
"manage_browsers",
Expand Down
Loading